From cf2104550a878752b9faf2a94ef23fcfcf0c00e0 Mon Sep 17 00:00:00 2001 From: Shmew Date: Sun, 13 Oct 2019 02:09:11 -0500 Subject: [PATCH] Initial commit --- .editorconfig | 14 + .gitattributes | 26 + .github/ISSUE_TEMPLATE/FEATURE_REQUEST.md | 20 + .github/ISSUE_TEMPLATE/bug_report.md | 27 + .github/PULL_REQUEST_TEMPLATE.md | 38 + .gitignore | 376 + .paket/Paket.Restore.targets | 461 + .paket/paket.exe | Bin 0 -> 72424 bytes Feliz.Plotly.sln | 72 + LICENSE | 21 + README.md | 3 + RELEASE_NOTES.md | 2 + build.cmd | 6 + build.fsx | 408 + build.proj | 25 + build.sh | 15 + paket.dependencies | 62 + paket.lock | 1631 + paket.references | 3 + src/Feliz.Generator.Plotly/ApiParser.fs | 330 + src/Feliz.Generator.Plotly/AssemblyInfo.fs | 22 + src/Feliz.Generator.Plotly/Common.fs | 115 + src/Feliz.Generator.Plotly/Domain.fs | 226 + .../Feliz.Generator.Plotly.fsproj | 21 + src/Feliz.Generator.Plotly/Program.fs | 30 + src/Feliz.Generator.Plotly/Render.fs | 317 + src/Feliz.Generator.Plotly/Utils.fs | 82 + src/Feliz.Generator.Plotly/paket.references | 5 + src/Feliz.Plotly/AssemblyInfo.fs | 22 + src/Feliz.Plotly/Bindings.fs | 2058 + src/Feliz.Plotly/Colors.fs | 193 + src/Feliz.Plotly/Feliz.Plotly.fsproj | 32 + src/Feliz.Plotly/Interop.fs | 84 + src/Feliz.Plotly/Plotly.fs | 220 + src/Feliz.Plotly/Props/Config.fs | 238 + src/Feliz.Plotly/Props/Data.fs | 32613 ++++++++ src/Feliz.Plotly/Props/Layout.fs | 4234 + src/Feliz.Plotly/Types.fs | 158 + src/Feliz.Plotly/paket.references | 5 + src/Feliz.Plotly/paket.template | 11 + src/plot-schema.json | 67979 ++++++++++++++++ tools/FSharpLint.fs | 113 + tools/paket.references | 6 + tools/tools.fsproj | 11 + 44 files changed, 112335 insertions(+) create mode 100644 .editorconfig create mode 100644 .gitattributes create mode 100644 .github/ISSUE_TEMPLATE/FEATURE_REQUEST.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 .gitignore create mode 100644 .paket/Paket.Restore.targets create mode 100644 .paket/paket.exe create mode 100644 Feliz.Plotly.sln create mode 100644 LICENSE create mode 100644 README.md create mode 100644 RELEASE_NOTES.md create mode 100644 build.cmd create mode 100644 build.fsx create mode 100644 build.proj create mode 100644 build.sh create mode 100644 paket.dependencies create mode 100644 paket.lock create mode 100644 paket.references create mode 100644 src/Feliz.Generator.Plotly/ApiParser.fs create mode 100644 src/Feliz.Generator.Plotly/AssemblyInfo.fs create mode 100644 src/Feliz.Generator.Plotly/Common.fs create mode 100644 src/Feliz.Generator.Plotly/Domain.fs create mode 100644 src/Feliz.Generator.Plotly/Feliz.Generator.Plotly.fsproj create mode 100644 src/Feliz.Generator.Plotly/Program.fs create mode 100644 src/Feliz.Generator.Plotly/Render.fs create mode 100644 src/Feliz.Generator.Plotly/Utils.fs create mode 100644 src/Feliz.Generator.Plotly/paket.references create mode 100644 src/Feliz.Plotly/AssemblyInfo.fs create mode 100644 src/Feliz.Plotly/Bindings.fs create mode 100644 src/Feliz.Plotly/Colors.fs create mode 100644 src/Feliz.Plotly/Feliz.Plotly.fsproj create mode 100644 src/Feliz.Plotly/Interop.fs create mode 100644 src/Feliz.Plotly/Plotly.fs create mode 100644 src/Feliz.Plotly/Props/Config.fs create mode 100644 src/Feliz.Plotly/Props/Data.fs create mode 100644 src/Feliz.Plotly/Props/Layout.fs create mode 100644 src/Feliz.Plotly/Types.fs create mode 100644 src/Feliz.Plotly/paket.references create mode 100644 src/Feliz.Plotly/paket.template create mode 100644 src/plot-schema.json create mode 100644 tools/FSharpLint.fs create mode 100644 tools/paket.references create mode 100644 tools/tools.fsproj diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..3958ddd --- /dev/null +++ b/.editorconfig @@ -0,0 +1,14 @@ +# To learn more about .editorconfig see https://aka.ms/editorconfigdocs + +# All files +[*] +indent_style = space + +# Xml files +[*.xml] +indent_size = 2 + +# YAML files +[*.yml] +indent_size = 2 +indent_style = space \ No newline at end of file diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..7ff73f4 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,26 @@ +# Auto detect text files +* text=auto + +# Custom for Visual Studio +*.cs diff=csharp text=auto eol=lf +*.vb diff=csharp text=auto eol=lf +*.fs diff=csharp text=auto eol=lf +*.fsi diff=csharp text=auto eol=lf +*.fsx diff=csharp text=auto eol=lf +*.sln text eol=crlf merge=union +*.csproj merge=union +*.vbproj merge=union +*.fsproj merge=union +*.dbproj merge=union + +# Standard to msysgit +*.doc diff=astextplain +*.DOC diff=astextplain +*.docx diff=astextplain +*.DOCX diff=astextplain +*.dot diff=astextplain +*.DOT diff=astextplain +*.pdf diff=astextplain +*.PDF diff=astextplain +*.rtf diff=astextplain +*.RTF diff=astextplain diff --git a/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md b/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md new file mode 100644 index 0000000..918a48c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Propose a new feature +title: '' +labels: '' +assignees: '' + +--- + +## Is your feature request related to a problem? + + +## Describe the solution you'd like + + +## Describe alternatives you've considered + + +## Additional context + diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..7ca362d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,27 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: '' +assignees: '' + +--- + +## Description + + +## Steps to reproduce + + +## Expected behavior + + +## Screenshots + + +## Additional context + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..7d0796c --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,38 @@ + +## Pull request checklist + +Please check if your PR fulfills the following requirements: +- [ ] Tests for the changes have been added (for bug fixes / features) +- [ ] Docs have been reviewed and added / updated if needed (for bug fixes / features) +- [ ] Build (`fake build` or `.\build.cmd`) on local branch was successful + +## Pull request type + + +Please check the type of change your PR introduces: +- [ ] Bugfix +- [ ] Feature +- [ ] Code style update (formatting, renaming) +- [ ] Refactoring (no functional changes, no api changes) +- [ ] Build related changes +- [ ] Documentation content changes +- [ ] Other (please describe): + +## What is the current behavior? + + +## What is the new behavior? + + +- +- +- + +## Does this introduce a breaking change? + + +- [ ] Yes +- [ ] No + +## Other information + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c64977 --- /dev/null +++ b/.gitignore @@ -0,0 +1,376 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.rsuser +*.user +*.sln.docstates +*.userosscache + +# Xamarin Studio / monodevelop user-specific +*.userprefs +*.dll.mdb +*.exe.mdb + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +build/ +[Dd]ist/ +.fable/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Exclude doc generation and logs +docsrc/content/license.md +docsrc/content/release-notes.md +docsrc/tools/FSharp.Formatting.svclog + +# FAKE build cache +.fake/ + +# Test results produced by build +*Results.xml +*.VisualState.xml + +# Chutzpah Test files +_Chutzpah* + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.svclog +*.vspscc +*.vssscc +.builds +*.pidb +*.log +*.scc + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# Other Visual Studio data +.vs/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Enable nuget.exe in the .nuget folder (though normally executables are not tracked) +!.nuget/NuGet.exe +*.nupkg +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets +# Nuget outputs +nuget/*.nupkg +release.cmd +release.sh +localpackages/ +*.orig + +# Paket dependency manager +paket-files/ +paket.local +.paket/load + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# Windows Azure Build Output +csx +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directory +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# VisualStudioCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# Others +sql/ +ClientBin/ +[Ss]tyle[Cc]op.* +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs +.ionide +[Kk]ey*.json + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file to a newer +# Visual Studio version. Backup files are not needed, because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +#LightSwitch generated files +GeneratedArtifacts/ +_Pvt_Extensions/ +ModelManifest.xml +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml + +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# ========================= +# Windows detritus +# ========================= + +# Windows image file caches +Thumbs.db +ehthumbs.db + +# Folder config file +Desktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Mac desktop service store files +.DS_Store diff --git a/.paket/Paket.Restore.targets b/.paket/Paket.Restore.targets new file mode 100644 index 0000000..aed3c3f --- /dev/null +++ b/.paket/Paket.Restore.targets @@ -0,0 +1,461 @@ + + + + + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + $(MSBuildVersion) + 15.0.0 + false + true + + true + $(MSBuildThisFileDirectory) + $(MSBuildThisFileDirectory)..\ + $(PaketRootPath)paket-files\paket.restore.cached + $(PaketRootPath)paket.lock + classic + proj + assembly + native + /Library/Frameworks/Mono.framework/Commands/mono + mono + + + $(PaketRootPath)paket.bootstrapper.exe + $(PaketToolsPath)paket.bootstrapper.exe + $([System.IO.Path]::GetDirectoryName("$(PaketBootStrapperExePath)"))\ + + + + + $(PaketRootPath)paket.exe + $(PaketToolsPath)paket.exe + $(PaketToolsPath)paket.exe + $(_PaketBootStrapperExeDir)paket.exe + paket.exe + + + $(PaketRootPath)paket + $(PaketToolsPath)paket + $(PaketToolsPath)paket + + + $(PaketRootPath)paket.exe + $(PaketToolsPath)paket.exe + + + $(PaketBootStrapperExeDir)paket.exe + + + paket + + + <_PaketExeExtension>$([System.IO.Path]::GetExtension("$(PaketExePath)")) + dotnet "$(PaketExePath)" + $(MonoPath) --runtime=v4.0.30319 "$(PaketExePath)" + "$(PaketExePath)" + + + "$(PaketBootStrapperExePath)" + $(MonoPath) --runtime=v4.0.30319 "$(PaketBootStrapperExePath)" + + + + + true + true + + + True + + $(BaseIntermediateOutputPath.TrimEnd('\').TrimEnd('\/')) + + + + + + + + + + + + + + true + $(NoWarn);NU1603;NU1604;NU1605;NU1608 + false + true + + + + + + + + + $([System.IO.File]::ReadAllText('$(PaketRestoreCacheFile)')) + + + + + + + $([System.Text.RegularExpressions.Regex]::Split(`%(Identity)`, `": "`)[0].Replace(`"`, ``).Replace(` `, ``)) + $([System.Text.RegularExpressions.Regex]::Split(`%(Identity)`, `": "`)[1].Replace(`"`, ``).Replace(` `, ``)) + + + + + %(PaketRestoreCachedKeyValue.Value) + %(PaketRestoreCachedKeyValue.Value) + + + + + true + false + true + + + + + true + + + + + + + + + + + + + + + + + + + $(PaketIntermediateOutputPath)\$(MSBuildProjectFile).paket.references.cached + + $(MSBuildProjectFullPath).paket.references + + $(MSBuildProjectDirectory)\$(MSBuildProjectName).paket.references + + $(MSBuildProjectDirectory)\paket.references + + false + true + true + references-file-or-cache-not-found + + + + + $([System.IO.File]::ReadAllText('$(PaketReferencesCachedFilePath)')) + $([System.IO.File]::ReadAllText('$(PaketOriginalReferencesFilePath)')) + references-file + false + + + + + false + + + + + true + target-framework '$(TargetFramework)' or '$(TargetFrameworks)' files @(PaketResolvedFilePaths) + + + + + + + + + + + false + true + + + + + + + + + + + $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',').Length) + $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[0]) + $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[1]) + $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[4]) + $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[5]) + + + %(PaketReferencesFileLinesInfo.PackageVersion) + All + runtime + runtime + true + true + + + + + $(PaketIntermediateOutputPath)/$(MSBuildProjectFile).paket.clitools + + + + + + + + + $([System.String]::Copy('%(PaketCliToolFileLines.Identity)').Split(',')[0]) + $([System.String]::Copy('%(PaketCliToolFileLines.Identity)').Split(',')[1]) + + + %(PaketCliToolFileLinesInfo.PackageVersion) + + + + + + + + + + false + + + + + + <_NuspecFilesNewLocation Include="$(PaketIntermediateOutputPath)\$(Configuration)\*.nuspec"/> + + + + + + $(MSBuildProjectDirectory)/$(MSBuildProjectFile) + true + false + true + false + true + false + true + false + true + $(PaketIntermediateOutputPath)\$(Configuration) + $(PaketIntermediateOutputPath) + + + + <_NuspecFiles Include="$(AdjustedNuspecOutputPath)\*.$(PackageVersion.Split(`+`)[0]).nuspec"/> + + + + + + + + + + + + + + + + + + + + + diff --git a/.paket/paket.exe b/.paket/paket.exe new file mode 100644 index 0000000000000000000000000000000000000000..e4539ce4d6432e661567d3c473e4e1c03b8da3ff GIT binary patch literal 72424 zcmb@v34D~*)jxip`^-EunQSxJCM1C*gd~&6B7(jAfts{=Tu`=he$M zb|tHN9eaZl-(1xZ@9DAos@5f{oc^AwuAZuyi`%L;+ntH#+}ywjt$N8UAr=^>xc!I8 z&%31^6T?NeF-nMczzHbsqC7*0D&SRkl68bjWj8Qk5undnq=RoiYoK0hFA^fi|I$xQ zDrxait|1l^4!xx*C7?eN;>}@rPBTOf9#7;Lq5{wV`cox@KSS6LdTs{Y+?Uwa2YUJ6 z0FcIYh25E-D%7UgNje>1vTd-DmHs1BioG$d*-3QU5F}g4X7Yjf&q;FA2XllNMSjJH zY?Hz(#>IuW`fdT=NwFcrtt|9kfWlEyOoJS>hCKFb1*IeDQIk(J1llJ_jACwkce<8-37o+^RH$l`JQ- z2Ph>10~&L)VzYc%_E2!^vYZ;K0J=xOt^`P%Rp_-yu@&;NbuN*vRAa8<`MqS8<=fpp zxM(!7TQsF`(S@FnCsyr)Ke_af$2oIQ@evGOD`;3|#0$jA^KgwL=zbR5i%xCDl2)ya z?rVitlMc%Y+iXyBer6&YlBCY@sG*frt!8V(bjfnGa5(RbWNnhCoxT z;#M7oo01sU0eb<`8}lq*#0LZqwuJq{nwy55sJSUeal$tGA#&IacsOW`UI(49Hv(e= zkvcNLXAMy`h*Ddd;)iH+R6isms6-$c0SHj;fU}=6LMmW40@OBzoCm;>kr=3C6Tl89 z%Wy@SLGNBWxGAcsDMnJ>0ZNIWOEvC}50)8DGNW0BQm7>wsTCTtOL7{keEvI7_3~V+ zz>JK85FX?4uqOcc!>e-qzAL-Nykx;h)J2MG@IXf)nC}H24j_u~j_PKd{_H@qk#S`;{?RiLW?SmiHSafbB z!F(juHs#cr&Lb{)q8U-t%PXcKAAEv(r3PNWDsCQ$s-a;mXIoIu)e+#XL@LER%yq1bi-` zPv>QvbT_@27F@+050%IeWLycF&QMB7S%k5H7GfT2Rn22YvcM<5m|{5^8>16`X-wzT zgvt`OXOfoP>jw9_nskt$6b=$_{V>x~6_A!Q5gOA0O1JOo%wm{ui=k#Vo%YOhCfxKz zY(~dmGe)G%pcFO(o$7R-lcdtmfd9hwWWXH%m0hJ{Oa0-SFaoB4fsU7z4i%DhQQ5M@jIAaLg{swqu~InrQ2Un zl9)4C$9mQ=O47&=P~>ieBE%jwD=9?UJo>tIp0A|!&e}-8MP(y_DGzng>ldu70D%#2$<5o8@wF9WiJJNG~ka}e&u4z zUItF24d5_z8jcF5eJPP%bs9$6iw93e8Kzj|q<*1Ai z`5Z8ANAxnPKYB~#Y&@;#*QAY-0?yqq!8ruLlL7)2790Vzc`;13+kr=)l##V~_Mu-J zwMrCD3)F^fjQv2ZRH7Jwf!ZN9I;e`1a1E^mLo$gLM<*{ZA}gRW7V=p(nhy4C0E|gr zG_ny$wr0cakuFXsiu#l10;`Q|0<^mc4cnXXz!;JO_2-YN>t%Aij+%8x1+4EOF&+;j z6buTp3f5D9pyehSKV&xLIDbO5BdCNGj+%B9&)qOZt;1j()?qQ~b~cqfKq)kA8h69I zOqnK<>17#8*$taBlbh4YltPQmMqaKJ2-`ufrfla-kLXP%f$xxB`(c=o&4B^4vyByc zAkq)u?19kkEx_!p0J+XZpxth4>27=j`cnQf`AzzlOuT*tp~%&9qy8PtIpG{gh&~6l1wu)X)ARWf_hv zDyU!&bRWu&Nect$5~Lx-DLycDu5f@qoN%q4|14vTV* z&c{ZK#z1aX@=Fk+tw&@u=$xaYu?e9)2x=C1IV)ymDXh@zdN{xBls zv+*KurrMfH(Ike=cVnp#XPqU=(S411PAFgWR%RtHgZcsTm$DtfU7){&!f4COkz`*1 zkh~ILcM*glR{;wgt;lxfAiHaX&%PRL70Ztbt4W&C@D=m88#(tu?slG28)2S~QBn-8 z6cuC##qKM%2@kXO@0GmSu)lm#zt~YBbH#HGz`s##~u>wtW+6 z^o3U;QjhsxwSM#?mKIXGO8d)5HEr6EuCi|?Ns}j4wRp;v&g&@LzJ(H^B~WP=dP)kt zjpIWeY*fDjcA;g3tjen6#@YZOS%mn23}aLmlnaF@NcN<6ClZ3VI|rM42=IupN*b`;m_WRWud;R zILjZI2upl61_@UDM+52DY^l|a>L)bz8>gtgOXm!j=lSD7-TYF{3$I!pj>>r@qhv|c zgF23u^GZM8ly6p^4diq70cfvltY;D}tQn?986iuMnbVXY=n`}i>W@^FVru6mD|s7~ zL>Z!9)CgQh>^4hsOSn-_zX#GX)vW%eJZjixKecMJ4CnYKBG8Be4;qzL=vLGAtk^Va z>9HfJd6m+UmCz7g#f^uQkZO2j(d{z}joXqYCvXwmamI#Aa^T5@u*|+4z-Qk9Sl3v{ zMR>xwjajLDZg)~;o;l}}Pd@R-!ssdJU+k<*MLd<2(a52xj1kN!7_y4N2pCwdDF!28 zV4746M!iiiIA+i)%u@potaI#XuAu?)(uUN~WvNEP8 z+uhx$E+3C=0&?6MO>3&JAy4f9rO-h@BkfNppi&ugP(~QOFzv5HD5Y-FEv5E1zzA5h z8ysPk+{7KYWb_aZ@W@?Avcl?_{3eK{;i#u*DFy+Jf$h*)3Z2f!u-jC1j6q0O0nyV6 zV?w_htXP{93W{EzeGdqq{VhPX8ow79FNb+yn8f$R6sv>K2* zN1%2HVfTYT)!2>+x^6P^0BQR+z%CNgZ5LTa9+l2W7+}%<#FEa$6dpZicMW7&ue2XT zUekVvls6|a&shVM7%kgfOOIi4fS+S%XJHLF?kPELM5kj)`VKNw=7b{&u%l6#LQ`pZ zrKvO*U8M6xzKhH{d4kNOrfP{{LsaHE>0$3TM1iVz(03vaLt=LwDos1zK+$ol3xy;fp?r@5B+-so zlm8HCPUJB_XBIrlD>H=H6KCDVm+G1V#^JvJaIS=g;h^=+5gCKXL z$YC(B%G}9*NY|2_P1!8_2n3whA@6RXv6aA)jAj3da{3B+5`yDW~^YN^_2@IiqDm**5y670OYCG!$o;mGkL^Y|4;RLHShvr!Li4 z9GdL}fPLlQ%PHSOEN|U&@&Qz4`iDmn8d`0%Zkk}YDnX(j> zWzou=68zGh&nn0Tk<9?n*=9`2s8rVdmN>if4Zi=26)CO<^l#vtWFd--N~~#K05w4K zI-Nq*)039&jDUf8N--D#qrqh`0tP~`#{06M1pmTE=$F6?^NTMz{_`|V`jY?Szn~N2dgL7_XL|%kY)MulgK!hNP(33?7 zaYd3WLXbr0$s&ZfB0E`xVB{s}jZN{<0Tta5qV;eC%Y=ssil^-{+#BK)M%$3iZU0VL zMG?&6I5rkVZfA<1+WccL>f^+w3MCXPQbNwZP<<^Ej;ge#3MGqx$ci#$inSgk*<7F` z6=h$F@{pcUxLY-1;igzsjR~Ks8iFrX%?kP4s-<(Qs;T|26r0eFm6`2_I>|`7y~Zw< zk#y6HZIO|5D~ug0=>XSt5RS{!4pfydkdbu3%!=}!Ly8+vE`3y4Rac-Jtx+Y#U4jZq z5mZi-S<;xTinL!w`=k=LrV|MroJa=foP-WeB!hJ#p(+tW0)5*OxWX1y6hl(yq)l{A z+IWlo3Q7-PW0l%}H7i~=E}e6*1q+WZ#dhn&RPaanxY-+vPmvtHDOb&oI2ZJnj6!Ao zKJ49&qAVLh(*ifFxY)@t*HPS3#Vyrb%;JzGD@OTv!Enmbp!pK2@fM|Hh-;bY8*-C< zJ~OlI9sHE`Hhv=1@D7|pPO}>f7y$zTS_KqFz!>E+7@;$r>*3dG_|y3h1&80GUNW+W zJ*m!Zx8tZ7D`o8C)%oqT(#-Q)b?C-jzq-IUrAXu$v_)P8NPYgY_^s`b&aFCFI6n)O-Ohus2VS@1Jr*$RAABB zbBd11FoyFW&IuAtk^(}e#ECkZIP|y@uc4IO0^Cq%G9rHjH~QG_(P)R-rn_;twC4sgl<3DVY>pUsiWV6y!N>6oWC;52gvBG-aXJzxxp)1<@5dKtL} z31*}aP~-NSl$+MbfjiXL`JmziQ6e`uR6{4mTxlEr56;B~%SU{+E)*n8|nWjQpJl>Z@h2 zcLdqX{MyJB5U&l`|3JD$`#78{M4rKeH#9I|6|s@kS1W)8RA?(CY2wPKmJUJ0vrB?1jZ1vQdyAVY^5YQT<%h0U!X`U9r zk}NPl=28C`PfzL}jHIumo*;t|U%djomHI^}Vjy3@`2p&pZtm6gxNHbcqxdGD>0$0I z!vgTJ>U3`6XQ}f8ehzV7=4Y96SsA65J733B<-fhQ!pSZt?oekWJ+a}GDAN})0V5s& zy6_^K)>2jQah5{P-D;R>`JHh`;cP{6#yy3ZaZeGpy-=v`GCuXrg37`=N?^r?^+y<< zrkm*};hSvfTmP?z+fq#dS>5^z@H97wTX)AQg-PviwsO#Ry{Cc|z6cB>*y z-ev}lHsW#-J=$ujLMBX4R<=_#H0?v5@}VzqlsdaUGr(P5zG$2Tb)*-ws=$IZw0i<< zHPwrMxQC&u#@|4nx{zzCbneSgtD6R+%koBkM>e{`KL(+2ugNbmTFCmpgR_2~WYSrk zj$vtowPxoI@Z4=P?RM}ULp-J0Lx)~yGHu|)An0y;DO&2(7t(N{zK{Nq$a+e}HYvU> zs(z(#@&m@dz&aiNrD}WC3ywcXm1!RY8o}ZukWF{1v!Rgh1oXWn_X87eD)JUp>B#fA zE+}^%Mtx4~KFI*JzcadWQ1wr&W{x(9>ztceXS&MtbFD+3l5jSDTxY%x%P|!RsHo0^bKmUDG4%>;Ck0k#)cFix8g^ z9gm5~93a7;*gzu!$Xf>lCpR$y6gNCk{*E& zP7TjQ2j^=FzM#M{+YDMwU_%^;6hJwx0vh?fWZDQtXX_C?q8fgp5gom_vLb@lRRYdz zu$*NC&Y{G7@CGJOs6xn^NKcwU7y$!;LNORAbIwJUXdoP2p`sZY{SPn?!3s+so?}d& z$0hd zQfhL2S^N@blMl%4@T2LhP07^;ipTyKuln&kd=PpK=ykRsUCrVF$EX=Jx@gF%xBJlN zC}1bb+&V9ZQ2Yy zi#optk474f$v<&XL}aQNJezg^UdMR|JXKtl#e`E?r^`87R_APW2_=J911ZDtGPHwQ zPi_`<*NHN8dYtQf#Te9u`ljAuI=D9wjvaUa(L|>DS;1p280{Pw^Je4P&)amsfoJv_U{%F#(Q0uu| z>A_xw%U_hr*_O)b+KqM$B^T>_2rg7Ux((-BLitL`?k>t#=Gu*gJiRX!N-pJm=B}%e zA+iPr;X4L9iQrS_DAj!#>7crMxZZUznb(e3&5Ci*p|bf*dkAEr&SfabU1UkVCrhui z)V4@TX6w6*uR^};id=L`yy=>juPs%3B-(oa8ZJ{e8nr`wmm?;YtA!ip+c~)1P$&1H zhX0cu+~J{`xc!Tx(#OkEd#=%9;chX9#t8ZfmdC2EFaieRxneK^##EQV2pH(cN`etE zrnwA8zMY!iuwSA14I2zgdLvl1^VIm+0bOiVLTkJCQo74eY>TQaf2iw-}mRUPMDXL`ONi#P3>nf5ghfaFovvKz= zgY~SXR5gWDN~D5hzA{)Q?rNwVpcHzCv@yruWbqMP)URiFnh$=6Ho+PvbfN=rvTzoZ zWIGST**PZPM>Z8# z!Knm?Pk{>Y5}REGs_J_9W^AGJNvf_PD_M<%9j?IDBv9r|iNYD+;Y&h+2qxG-N>062 z##heA%VY#Q8!J|;=Q5a+>-GXfO6mnU&NEbT z-t%Lk8{7+M$WT#m`wvhd?7wtlDt6{*U-D@kA+28J^$%*^kbh7|@Q1vrBQy>lB$kq* z0SqC%AYt3+1xIo>zG=t)-a~Je(4L^sO0Q}PecEYgVYPnYyl^5>84H;5K?@ib!rS(0 z1>-s+)nKZNq3>Xgh}}h659)HkMxE$(^M2@+HWx zoQ>t+4?ZnD4tL0%WR5z9!5ggV=B3IR-jvpfVabw`?T8@GS^7IQRPUl9kyVA_)@V&0 zuR1#LuwZn8Tfi?+SagkZJrv6b=Is;CpO|x)WH5n|NvAYT3}))SYVdi1Q(1V z!A&H%&ygc3N=2dFv4A=`0Q~I^rvO+4I&tPM`K2oQjtqSt*%WAO{x~I+n^#&=z5eku zbpwj>^i3FacpIh2j5liT1GmW+j>Jgs$;m(FOy?n!TA(&3Pa|6$vb8LNZ@C1b>)jVb zclD9(2)^4A*tLZOXx*y5ljG$+Oz8ou^5bTY6&@Q9M-i$fL)**h{9WRWdRa(cfunq; zz;aQXk;<1XcVeUO$?@TRhj8<}lEBe^S*%L*%bnYhL~mJIbbA%pwF9KA{8%OLB+4ED zKNknBS-bivG0bVSb z6iCCFii?&dN5U&RIA&rj(m623H2I_Q_}EgplibCQ8=Eall-YsC!V1b3fIp`(N01pfL!jX-_=xS@{#SoD@Y0qYVh%%x(iE4&{?f3G_kPtE`Nu(c*R>E)@8(9}58iM0fG>Aag4{_OcsSrZE5~vUAc@}; z#4W}-&f!xDM%Ov-oWM8vdLg<@^0GUI*Ja7YMQ~C$`fc@H0J)R)0sJQM=rF=UisF~o zBV)*eB?t?dDV5Y?nv3|Gtd=v0$e#k|m^)OzO%%6%(=1Pr6HF1Rw2RV3_}c?8UDQBCq5V%L~8@Vk|u(~N=Vz!%SciVd%!zKTtY1^%A)g7;*}K-z=mbTg#V|UWcGk# ziSQ80_4P2p0~NP6SfZBgc?K{bW|xrW2I#lMlZ7Pn$}lQ@XYrkt1>)`@SE24Dm6z5O zh)3!P|3?nV^bIHYFl+XsF7N~N2gEnaNY6_w^J}hqG@tk~MEqy6$sW%Lf;QLU7f7|l zee9Dra>#FQpcO3fu0{MyS>|~01Ktwxr<{fG(v)K2|F)jI_eb{Lygc&Z+@a*d`)erm zY_?}PdcUA_(WLO>$3)$OGRT7@aA$ZSl zf;X@w)$oiZ+A9d=!~X$sTE)DYfQXe5To@$JAAsir;_({d+*eMT-(vV;fO7qDD8Uf> ze_S4wUN)5UKbBAaX+~;+@D9CdNP+k%JYOJk$_Oq2wD2XcLA-)f-KAx#Ppxzz2XXtp0I+fO=sSxO(xVeVXvM?Trx*?aS z5N?V{%js1_72uo4M743gBAk-oMpV2P+cWg5c!m0OPHV0u$udx+<=zpBqH!M-e{3SE zMl2O%%P&iasuim^-|R3^b@-JR%GX&zR6X7cAZmAzsAh2i=R1S7j24%P+o1K!O<$;@ z_;MvnJ^^YxC|W}Vg~QZXv5zHNS#mtimPzLiN?r|&M-3k5v|FR|pk;!1nyIagiaNqt zoZv?1b%=p;RA?-uXH$xN}7ohG9 z!|9A^ju^_+S89nmOH(&++UG!-)j@FttvOzNo+#v70$t-pLew#}m#Ot4k|DVPi|};5 zO=2WV?t(?*#bz;vsb`t$5#ur>9WjB^=3>=e`4PWp|6@woSynUU`T zqF~uCSn^`g%G3u;T_WZ)1p@gl7Ymu1&(xKeAJR3tS}ZlZ@KQSh|9JfJNE@f!#9D3? zE1A00q_q8Fbw=qoiL;HifysHB%(j8&YY9#(CzwBkV1FsW+W||&_Zv2uO9$4~Z^C)t z;w%R@X%hom0Kb&A1Mq7M&+`+0Hp2;7yMX60{9V@GywT#y{LAv%2KIP2nWM$^L$A)W ztVg^zNVgAjGFJ$h0QSN9_ zmwjtqwK!09M_!0694)$wzlGFC{5Jspis8#X!Uufc27H$_=QDiYqEc#E|GCV$%>P~J z`LN-KkbFGrr?BlB*gRUiQ1=Wt%L9k=CWr~cDA#*g&uNY!`UAgB;o$)BGdZeWszzk< z(t*A3KYR;VEp}Aj0Q<+)5q?3_Vc=IbK8JFfDmIxb2DXF0Vqh`D-v8sOc(;Q} z3;-J98=mRV_LJZar1~r7Ca-OBKXfMm&h=zo=K5i*wmZ!lhE&1+J6 zZXZs#fzg4v2CV?w^3DM#lb?wn95ODyTHM4fyAB>+I{h6$R8rUuc_;!&*ztm zk5bgj`9sA#+IFCXSF-2hR{U(Ht`qUn*Yc~x%=%(-Xq_+MIXz0(aqF8aar-l`3>UEMoPP;bbqBU*d*>}>f+Mt za6a55jw#B2{fKO&y{V~hjtGMKyQZFxl?0o`2by{RSy}?=HS=!Pg-xcwSRyW(V;tw4<7u7plN- z6TP9S&xIb6i^czH>eP=sPI0YD^FJSZDcC9YYwESw??K(BsomD=!GyS%sp~{`!qVAHLg`YOshz#Y~Zv}fqX^Of__KM+} zy0rGK;CW(vin>cC#dM~w5hL^73HFKQn(_qy6Wl7gHFYd3L)*pqI4PiB*Mi%K9pZgW z9klX7JH>K7S=cB3QdAP!CAQJx9=-Kwv?jDi(D%bB-x~b5&t5S}Q@2{1MmP5m2bUlL!?lu_vgb%~}{6+ehQz}1>shp)3=CiZJ; zQ?Mm;xwuVJJA$)8eN$8IC2jHw@oi0YmjuNX;t@@KGtefl6pw4_u|N>}if1*o4{2A4 z=QMQyX;+D3Oub>8U%nu8wKy=1>i(oCtyvnnMwGTFswewFtS262YM(eiv?6q^I5M5m zRJ^`Uyr?Mu>)|$eop@DK?}USB;kPxlB(F_gFaDva)p<0Cyre0}i^y4Ut zKTmqY#iL}Jnw@*Cag%t8B~^`X7QbU^kAGMFmqIs-*EDrW{Z*j;!qgiEX}LxCXOYs2 zMM3z6&{xC)rrt0}=dEIcrf!V2$=gJark2#U`fd|jG&MBu%c0xFfTqsL4T`UdOElG% zdqe1J;%ZIBOGnACi~XAFLJ8jxw`;05cCGPEakr*c=HDK=M|@vX7ZnGwzB{U^w=qB5 zE8f=BQ%t?b)HUL8_^!~sVqiAa=nZ2{(G8&o#FsR6t`)>PtNS&zBo-78irY2STlJmL zL*kp7`W))_9r0~Vt&Kev`mT6HQ*Tv05&FLPiKgC1zDLB%nu=LBgdQE#wm%eaaGHu) zKP0p8dD2V%OjG2~G)4Y=ObJ4g{COxvkw1T&qR5|*rzrC06Df-P`DBVBe?FC>$e&NA zD5}HHQWVwUnG{7{dNxIomwuk2$VJ~~qvyqk z?6W=oHBCoCzY*pf%DTtj)ASoqIZRP6|4rxxQK8br{X<8|--`P+bxqwv-WNs1T*`Mb z=KhyMFA<8*lesjCUr_|8+ZtaBrK#^WzL}=H@09*6bkvpf)|b8;`hAM(!4FFOAw})Y z{V?>JOXcp$tq^}qQS(v4AH`X0%aeX8{g0wsQ%Z6>Q*UG`$vw(ye;l^_QG7{L~cJ`GFX>h%DP9eiLkyABq7@9nT@^n5L%I)E0awPG3xt$`c<64;D#8QEfjFhc!i> z5JuioN>im9Mk!NI`pGiWs9;KI!N!n3sxRSf22GKqWjw`_Z)8!=vW&x;qMl_LFDuHR zp5-%&mQltx4C+~a<7`b)&&oEg*A(?Eyr9gVC%n|Qxhaa;7F$@IMm55(#A=FaRA4;I zTK0(Cisphs1B*F)h?-DPY^eE9t+T?$dn%1vGi-dMDQeBI;a$%8cr=z8xtgNZEHz3r zMXTQ-#xPCM>UW4yuPIvLmKh^8MJwDg<8)2Ys;|SR<$@+gM#N&PZx%o!MD1-uQy1 zszs}Bf^oT~{v=y{rx`bC>SobXaQdL~CK}(+X@?;>aZuVMrQdXZaNb(Hh zu$Fw-NEV!7yr!wg%no=rEps*6VvORn3q_v15|ZaLrRp$!kmPjZ5-s^>wDff2I!%?E*B8t%_GxM?de6*3 z`DPh+=(Kxfo1Aq*+IMx@jqvV?Y0vAlb54==rcR5=FBhDc??avT6D}`zE!CZTeXTLe zn8wtFB2x3W&>W*rQ=cGe%r!38)M;4h%pGKBtMOHxHbWjLXdRR`&-j5(v%IaodB&eK zRqY)m=NtcFO8IlapnMAqD=zT4Q2fC&N-i++G_?@<7N)$r2i{#|RO_^E&w+x)h`WY3 zID&4y4`tJD%@5!n$mJ+}b}gm8TTQ7iSK*GCWxV3wxg_~;F~P$%u8fP5q>GOqej=_) zRQwB?DD`TbUKu#~BuHgRoS>eF&%&vT%b!t1spIR2qjDAI6X(u);+R~EO!xrol;RI; zE!9hkJ7B*lDu+;w3iBwh()oXdezx2Tn_UfOa_Rdki1Sy}NQ!@_a6>HO(#flX@p~a7 zMGSs3#j*lQRh&g^^DXQ{N|oX`Bu(+Imt++G|7x?6H&AzpQ)1Fa7JAs9xb+Xw&G z2cKA-L*H>-&$Uw?9$q4mD+euZh#L4@iu2h6icj@*{ZN6tQhdOYgya96`2Usj_OM{k z6n~GUHNQQKaOD%~lZL=F1{*G8?@ekXyal+)ea3^+b&?^D6c?c{nPLr~A+BOcs=JGm z2Tb;lTf6_p=XE8dK|$(ir^HH3$A)a7d>CcqGg%@O=<7kktEa6%Z-w@l_!wM>nl3&8(QQ>8fF~#|1 zB%i5S;jW$3cA0kmmaS4U|BaoQn$woRGbwAO$h71{J6%cTa}`6*=GxWqh}!@hzxT?$ zBD3viyx@kM$Bs&+NTN6{%mDeq+!=jORvQCvZ(-Kw6b4_GtrvA5Kp%i&+ z)#Dr`GOexSSVtV!+Dr{6OR7>%w)|v0|BcK+_S@gshIe3_6bjGu*vWX>LN`*a%MJ#; z;wf(H|EAn@E2vTI5j#1ieRf`IU)M{^c|OX7hdAzKa(>C)&g6_>3p3&OYDs4m#wp$9 z5zLfVxRSXEUXmP#4RI;=I@S6o%b$vqFaC;K@xS7Cb?4%DWS8UJjJ5b3x3ls4L2L15 zMgV^yyaQ(8`8@u9j<+{x?H&U3LYDAqzyNM#uB!}+i40p9wlZAGa5cj?!@B?tvE3jz zL|#`}EbcNUVja4l*Pl7!1^lM>e&c&sVeU6xz{;{nTvRzhRLhI7l5BuHBC-4+Z$99C z`AbBrT-C4{7GG2JMKJ=JuLtMvbvJ>NEc%vMD*Yu70?sV{9yr%kJ_@+H!T{%Z>`8oA zELv0ncwOZYv06T!Gavj%VlRleoNT>=U*M#&;& z&dtC_yWAF2C+u}8Lqo&bME_!*-`K9Bk?m8CUDjN5R&d(5~-Zt}hk zxWD?(#(sHY@!yRFT<%i&aIHsf7vHKKB3ormY#8v@Ye&gF;)dEYz!}rf0(?byk?i7o zsHL)bSev{{cGf z=8Eu7%xW`K)Fzk8{WxK7z|DV~9Bo*UXU);jjBx?jfxOpM{@$Eu{;2$~fJ@1ToZ4b+ zFL}>=Q3P?m(+VFRHxF??KO}!wUgT*pzlO8;7W3i}1m7=w2;Q!NRfpv37$b+|jX3>Z zYWylt=~-%UZ#V9VjRyX!zy!}y`C82s;51r^v)DtUfc|H%71j}OR#$9*%$Rzzd1=HDf|%&SU#-b;-dy!F1_q;V8C zr;o_J?5Q5%DmSYPgPfYFE#J2uJ`UYDH_~nI8mJ28|3-b@*7o6 zUh4B>ywneuh=*Y_X*&zrR?ENCP4_+^&DcV~RYTe&mEPvv%k@Q+$bM2>YCP9)1uPkZ z_;9K5kaeB+Y2$m9`@IhvkK%}GuXr@)2x3L3s2-{0!@FSZwHT-8m&4ogr-&O%fj{K! z5_BI!-h0}+N6ri#_ENhC#RKNd&>P;%QQ{H2sYH?Ia@O{Md4Bo(-s{rqNQ-moD3 zuL`=qI3f!|dDg>bLAc0zRnV=)A@fG~K_zunFSToy?-}LqRXwPjYq<3tPeQX5kV37khvt*X&o|q zt2O~rOgLn=6r2bAt*Wh%k5=!sTI5gi_QTtE8+Wq62lL_|xTvTo*@w#si7y=kqM&lUT8B$?;CQ}grdZ-V!(DS8O) zIJ3CXNBCsG!je`A3^i8W(8qjmZ*i`##-x1@V!945l z#*XY4fnyB%{%%Ck!{0J0t3UL;W!w{%{)ffi3d{Y6&?0SeCiI{uqr@8jXwMmFg(1fG z@+ks8TzfBU{%ZDg?^_1lSgn>Hc}M#vqINW=RMxcm5aGk4q+vc?H_zW9vrFfTJgn2= z{yglDE(XjI*8n0S;N|8bhNTRvSZ0Bko8`y*ikkt?#+zM!%)(m%JH`2c&x$?BL=N8P@@hFzyG87|#I4jAMYKj86c^899MGak>!#oNSZ;PBY2@XBv|L=NhvB z7vSgb^YHFp5^%Y3HQ*}a>wsq)j{>eWeht`Z`~`5MVPxltZle^i*BG1a7cUxHQObM9 zB5>X}z7F`2k(Wb@l6`<48O?=$NqUyZgTR-|4**xmD89mTwrtIl!Z3RQ_jr2qn(=?< zI9bhDjT9C(<98z~0Bghm7aE7=DaK1PS*v9a4;?IR0tfAWIfSwkH zafW*s9xzD%ZHyme{1D@hGk%QWtIQFSBn?S=su@l*StrA_4C4$3817+sfZ=Tn4>CN& z@EF5a843^SF&I`ctY$ckVGF|<4A(O3U^u|=LWTzz-p23_h6fow&hQw+R~f#>P-t4Z{|OGZ
kjyj%i<4q} z(b`ht3@BJe_yL9o86IO;Rl&I!u4OpD@W3$QA7nVKitx1z2N)h;c#z>ShN7Besu)gV zxK?p68^J1u2N)h?c#NTlP-+#!+4v3rHTWH>8;x%nFB!SAP>z=?<y_npY6NAcZu(I-yyuw`iAd4Uygsge~N#G--}%resK~JC4m3KsSy9i zO)(;O1$IA`psMk;l;L=vuLj>Ksl#5V9`B?#B4&-Gl|6pvb}aT#ldxx+A_U%2{~Gpi z@5Sy0TwHfQ;C6-$6@;HxPH@%mhX98$6b+98f2ZOJz@|EaE3yf;he-0>Qoy=o5yR28dHc^b12w z2b5w4Y%#D8EC)UdwiseIpu{`+mB8l$O3?~i4E%miHSqbc#lTy3HNY3b7MueEN~{j* zfv*OX7#9tIHmop2FQ63Xi6-CZ(+?G!P{zX8Xm!hr)R>IM)J7 z@i=OU^Fu(1z2zLhpP_z+cm`04!>FIcif|#|ukaS26u-theK=7RZIF2$P>SE+8w-Yb z0Z?K!yb|~y0Ht^hwKwn%!fN2J<9D^Bcmwa?N$eim0pGQN)#*IMvQ?N#$*%znlT<#l%%(L>8;%g^u?k04Vt0ohePpA z7*q@&Lq_Yz;@cn-@fXK8L=sqWZopq$d}3S!-v995CGuP15*Zi8=4)cM`7U@hXoN;2QBu$*3HIbqXiN5wZiM~blR?fnuoLF|M=&^)BdTuF>1gT$QnhL6>6~Hrtnb>;@5H&Tlp~d4^aO3zf_Psd z*|)?=;J@ci#FGiu%ZVpBL2*$UBg+!;&bCBfAAM((GMzflX>9ljwHb4|TOCGL#JjsX zVTS7=m3l&+Q!+D%$$uPT!LFrbOR#+wM#DIq}|J_(G>HjCb{D)GbRJqPZs)rP(W?CM_{P zv0W3o7mxn0dod(A&-iv=>HebG%>A$Wi_S2C)STSpIu#8H?8GX$-czY3b|=k6cjC+^ zcY@Jkc7IRD+R#QD(RmY_kJDupaor9Py9n{-d_Pl=dtiJ6t?9IJ# zbnuM)eKt`v`8clUN(%a-o$1zkOf@zAjL2N+$J8Svu(E}PYM)`I2jvz9GeysRBXENfjfr+r21;sq_sTNf`9ZQGN5iOtQei^UeIdwaXU z=!%QY$qw7;?pg=s9j?p_ySqEVK1nvuN%SO~t`4ytor5iD?c~Rde#b!+Ul{L+Z%A}5 z-$-so(&VY#?d@GXU432g?i6!zZ=#1fvrrtd05gJE+|$o zIyyxMMUYOhGTzlU+jb~!px1OIiAOGJO)huh9f?^z)IE`{7o~L0N_ND1iApX{Z0@z4 zxYO0Wy>&wmB8$p3t2^GC1U@6)(~;;#Pe3eA5<~kZv+ixZi4N4GYX_1SCAQA#??MHq z_jh%7PTkbrK0V&C2@z;^SE3tis9B~$`lkpi>W9&7cE8h+I61enP=(BsR4W0pBd=S({z!k(16B;MDt@np4&ovsZuZck2uyKVave3j#5`9X8V$;r$5droGy zZM3(}O?3C3oU*8Y^EwRild3V>?xvxC5`SU*T>Dh)E_9PqNpGXR*Rmne+Ox2$rympe z$wFuK^g1^6<^+}jn>WXMII8S%N-Zc(E@OGzK^HoikHOKA;O=#D8v4Nc zg!3thGrGGlgip?dg-qWm6K1VnPjO*O0zY1Xsd>Zplk?6-SYL;c@#zwnnAh1!OcbZc z3_q)JxWuuyokCz`V%@UDdHuYEI+Xy$1s;DQnZk&d9xUn96L~6th_jro`CUDog4Y_& z>BUCEX>RRF_Mv*5yexr*Z%0D3CTYH0?5y0_)t6}NCDuv@D90wzML7^?IACQ&05&g^ zo|#x5@9*x*Wc8#2hM1!kv@`5Zr3$N|zWyYWbNl*wGf1lKtZiL=oJLMa5zx_^To~Wb z)qyD_AvUKl>fOv*4`ef?Ew>lgTN6%Od_7fgF^!_-8{<7#*XWTz2I-|N+8Q$eS8yTv zKjEA8a~ZU4Ni2)^fQJkUApElV2mBI+K;TjR6#R|XjKasg{Rj#qLnr~c9Qw2>cjJt zr<<4cnwV+#6AweZuWNH+`SxBcwR<|jK`x?b7o<6Eg~+W`Tc}}lCZ-aNE`$qJGH)*! zB_Cn}b91|OSA8}`ZPcr6u^t6-zCN2DYr1;*xkEq6F3grnL_ZhU9WZ8Qf+p2OPe)fG z$;k*oYWLRKb5dF_tO8XY+)RIdL3m^>m$*Y=;%k3!s5s7vpei=>Xw44 z-nJ1-cd>FK*7@lb5%3ec8f`WPH7YaGYYHaaOnNKEJgy+^fisyi;=O(SP)HVIlR;|? zHzXt#Hyy0mX&Gc!Pe*ruX966(rDiQEdj^yIcoI{^nhdFwbs489RH zu}GyY>hImO;Zsv*Y)oL9?%#YW0n~*Tzw5g?C|dCt%T%B8)2F5C0jV1~W!B`Wqubk) zn7q)VIK&A=H)ktNm||UGJv!CWejE6zmOlJE);g@U1Vv+XOoulj$k>@qnwePFzhMIf z;52VgY)P|Q`>>70kfoV2u@D;z42E>7T3O9@Fo3t(&ZcyNDk0&_?dn7nO!H@L!vcxU zInpe*U>Zfb+9xNr_MncN`G6?i{i#wj6Uh#zi;v9GDzM>9I2aho6LBhI?m!M_)PtJur?FIVZk7&C~N1&w_nj>$+%9pH8K5bXF2^BGKKA zzSlubG<`e31|;yVnx;9-tC&v}NeP&f6oKB0WQA{`eJIu!%N;xrQTuUnw8fnUXKll< zW||yIlb}$`3Bl7$b7sVAPHcl7%v0MIuXm%C+G=8dCiv81`gU?E<}%{U>gli<(R)5! z<7V9;B*HOzW!&i@0-femXHViR99htI6A?bHe$FiwCpC%bQe!kwG`if@NL&B9B>xJW zfSg!Jn=W=EZ@*NWV;-spKcly;WU{T#?%m4Ra=RZ{;LX&59uF6^2`vKLWf5uKD6kiz zwUOvZEhCsjYtZO)akXV)swc74<*J5;D^eYaH1!go)?JY3*#MN?lw8>b6pLtq2}aoK z&c$4l*u<4l2d})cU))3Mi*D?y`)I(W*Lh+QjgM|t>uxtWbBeHg+vo5?iI=2{omq73 z#3Cn7YOF-*x9ZLv^(+Oj13rp__0y-ByS>AZFYNc>*8h_hjc`N=5OZG_#8*9 zr^#BO)YdKC8*D_;jhit)bZzET>T&4m{hP&Lml3%D3TZ_zXhDHpOHbx03mw;>&vf-< zv_eK3aD%Gm5c6zEq2gp1ErzJ^?f$-0cub84J+w&Homd7>5nL9j$&lnelF4(sUnY-T zc8ai?T4kOp=Bg%jiy{?+HVRzZ!5kPqn9+@iB(;i373QkkqK?5&-Hxg^_V?K|6Lic> zbflY@-N0*aw6{Rqfo&<$t-dZKqhfA3=*HHzyT3Ps#;R#9pUP(N2IZZFeJHkM8Od#l zxYMywT_eGL8AR)1Oce>9EHMXQPU-5Tc${XUv^25E?rZDs#lavJ5@{}XUmK^4{Ww89 zQ5(Fdu5{8VSYq=oD9xd9#2w!?C6Q7?y^EF|{mG1ZJ=I|{d58^&u{`lQT}d-YeR=6Nz3n**&RayHf;BTY|fS+r?IG?rz5J7XAA34SPF@@Ws4>*&x{t5Q=OtJ0`G=hYNk zlX>ccwocOVGoK}j_3E*%A17h3GIO}8qj0j?+0xaKSc1@~kH=Y%cE0M+dDa&6ZFK

)U`f!2ODyvbaK>{Z) zt1zLb`y-5Sdp&PkP*0x1c#d%rISVCvnh0-tTr&jQbWW_aGRF0uspSaESu?vwW_x@%zE~x!UpjSWHpC=viCAsfqyp^Cf zEPMc%6batFXu@p`K7>nR6B6%quPa42#x0vRqd$q+Jhe+=m*~3!K||5Sx%;F}QB(H` zx{JD}t7-n`Q^>ZbnTyx6A27$Kv!KGXA43gOI}X+C?mW*`ND*XF#v@H z+S~g!b|tZXNu47n*}P0zg^f%OxkSg8Og34EIr0=K9U1C*JCY<*DXMelKzA9u)@7~^ z)~UfpQ&{t|#D@OvxHD^;yX4oS3AIwkt|z@_;*QmfFf(Yj(0yFT^0r>==3N#F!;V?K znS)IMzqP{c!IQLV8k&a{rdDhiSaf87!)dT-jiJsZd1azea-Y816}EfHOXF8x8DoUf zf-(oIN2AN^0505i`Sitvan{MwSH<*3OnhX zh#Jl9U)ZU$f7N`=qe!C=O5G}H7N1LKJUz*a_CC~C>p}VY(vo#$kn7VaWH(M?-5X4n z%%m|&QfV{ozMizX8N(qp+hTUa07G}69Wd?myE?l1aQ-wCx7w&D4GrD~&+Xc@%iX7a7G6=n5_=2XH1!}sEsD|% z9buf74G3szipz|Fv_Mx$q+VU#s&K~lxHwEmU~neTM|4_;;u*fLCA2)S`bkxQ`O z#2Y6`G-|4i^gVX^8iB91sZ$^ba1rSj6=@)5Q0r1}FmkbTv9`laGZx5#&Pf+xB5|up zlZqQ5a5(^iR!NL(+M;@xo`=xx%3$0Wu~xip`TyGc61b?UxBoi}%rL+J11cckfO`te zASNh?h$yJI0l9=CvWc?EqT-SR=2mL%xs*#~Zn@@`xs;Zr=2B`|X0DmJo0(hc`+d%t z%bgjZ`fdOIzt8)!+~u5e&w0-CJm-6!=ehTu%l2rR4oNr7hpFI&n1l%u7FxFg4seJX zjf8oDX@xs5{Bak+9Sz!?k=(F1A2Z8EYP<&?2^cBHYQY5-l*XPWAbyNiQ-NSsHCMu1 zG39_h+6~2jyolsx6B3y@C2^&Lsw8t~#5@^Dg<*w@&pK4OgyN-EPZse96^pABWZqVl z)C}9ksAH9_RgypqubLVkmo_}JYI16(NNwfyRIBa77)**)60JEyeph8BqH|)tT^JNo zR909*p~}L+jNMfN!vgbzio56MmI=}MWtg)INf?z+*g>KeCmB*YSES0R4=x7X0hi8W zN5U6KFQLoLvm+mJe0WNU&;c`8NNKV8#id1Xz6;X;_+^Ct%t|vK$LHgT5`>MALp*~@ z^2bvcv!t`UoP6m-eCi`MuMn4!s4!)YL{CMBlys3ZuQCN*5-)`C6uTj8zJ#nOUX&*= z!P%ry3%2F5Y|5ZTi3rQ5WLURAhE*EXXqz^|rVKEF*I39pM~f`D7vc%=p?Fff1W&1F z;vI=hL2wMjQ|m=|gCZZFFr(uF9GBpI3)%+a-OL>1;;jf@%1cKs0$E7Q#u@E%Q3rAz zN?0AJ&)5U+N_4?{5lMJop*`Mx=#HaA{P#k75B$dBDAjx(gEOH{8d^gHiqQouL<`w? zy92X%wds14qgM0qk02|a)6WN0w9jI+=YwWFtA$cHg?c=(KN{~OjHS0rRB0%Yfp&X< z=1i2q{VTkEQi@iIGeWJ7sHX^h&9qGQ>QTwN7uXfWsGGPU)Z+C}T|`$JXa^taNHr!h zx_FI3op`iE6jS*aluj20Q~A1 zl=#A1x5~2%1f?=;hYK=ik}lDa3!d{c>P0TNBdbSwQk`@a=?Je8vPTUln8vQl z#C6nry;+wmHLz-ZMJSnvvb-KnlMy;9)GB4P(0fj4tR~WP8Q%JrMsIsuOIlC;FG4zv zAnLi$oA+lh(uyHbiGR{qAkIkwDxVggz7Bi3@xL>dl&&4#Wr&glMUCJ?gEw zc9IEQOFBomQfO{PP~hFIrm;3{OLggSRb(YMgqD&Ph?-$pRw}8-n>eEd;v1HtnbItY zsj;4QMufUSH84w$&KKZ?v3!WU0A0#pq?ed$$VCb~2lv^mrYtJ0LX43=D}vf3)x-uBG8+J;cTc5jHB^7Ns@#?aoBP z2SPE1f(B|P4So{CKlV$llgbd6h<988L@?pC*91_1-jd~&G{{A0<3qNp1oe=C1Wz0Q zNP+~+G%;|wWrIqhwG=Yp6jl$Ce@-9ONcuyN!G~>iR9e!++mm`?3#bu*{A9dR$fwXm z$SWCuPg7-ECK=ue4YEHj$$`jL!}XxmQm-xbPQ&W|D}AoMOigqX9HfCuBs1LY2ghhE z5Ll++Uj!zigk-|`LvTG3dMW0LP#B3`$Ad$9A%X3aF&bhq9dh0fT{&!Iilf-Ff86BZ zRM2Q4jUc(%P9;PuHzG)+~==xbaz&am4B7Q#kHk zqcrtZ)G13UCHEi#vr;rhVw}Y|w57cRYhRjcEj33po5WFzNHy9_2d8NKlTMQy$ra&d z3-zF^k|r`nB(u}D-9I{yhYV?U5J#EVKA{GUHE}kl7W8N@AMFz+6oZqTs3{rGFeObBV!;qTOsFWC z45VUuq!D|`oXCXw*GxJ!C0fsag=mR1$?_Lk4!|lz#dv?)+A^oKX0R!vAViThZ6W&S zU|(V>(CiqnwG{M{N{Zbh77-khMP0L*XKO?fEF|D6vbnjUSy0!Qj54v8fi;?rGUpbc zEd+0v)A~VzT>#!!7u>qRXh_A7?1gU}+Ur5!2f;QC;cP7R@sC_9q)L9Ws0ZTEs7}2pele8EgUoqx$Vuwn z1UznP;r9u4C8(q&T+pOT1B8{tTlOrXf>;Rme}%|i z(3E`qiY-VSAdO5zI_W)Wk~oMhG$61&tEZ}uCz?|wIwiBFYWt#$ zxc5Ynk*3ffJ&Q=tVCOZ9*O8tV0XjHL67UL5t8+T|2p)!BbGM06*1{Ib#9FNlQO;NL zz7Y*+W<4fFAGzB4qhc7)5?qTl_W-5b`Li8!*8L5lo-|BCX#!{t?Ia@(r`+%}d-*XP z&C=r2CP9DoS6Nd|@*Hj+TY^h64A(CB?~au|x(PzhZs2QG3ad_jq^ptvDE5*&9&|?2 zGwaLHu8jJcoK~q0(m%p6Zs>{>ihUytXpMLotxr}TxYx11j02{*!VWpC+9J)*8v!we$VIX3-eu9as> zfz#@QUaFzvpge-(LD&-*RnITcY$3i<(5f+NlJ(^Nv1m>Z4a5nN zrs1q+4yt6G6OYLn&cZM8MD#>TKquL3n5b0+pks(2C=7xSJHTwtP?(a!=4}x(N`rYZ z3O0KnmRaf#gQsa_8JaZ7t1Lpf6tu$)ADJ^nEW{kaL99ziO9CZSEB6en4LY&|$vPFa zfk1~_#F9xSN?(i!P;Y5s6ho>)Y7FZmm$!9v#nQl#fFuL0lrZUW|J{1hCR(g+2;i25 z2>G11mYyYXm}`MF5@ZPxFb_wf*Q80-fFB71%m|qpuqS_zCR6ecIR_}0yu2*%Jq*WD z;IXV;gjwsjp+uo|qK8N5+QLYQV7egrBZ-XHJOEE#g7<6NgK0EiNZDv$QKzN)r~@=_lfnjrAPO?^;ll$x z+!fI?%FyAu61CEGdUmCdF6Ht2GpNgm>&GcVrgh=-C3)h*=}&QOchM8ibQhZSQ?W=kZ81!2(9&srnwL{ z6;qyAOCak8H&-mXNo6d@25A-vNY9u-xD$Zo`^Bjx5b1JcSG7*zyMsFZTYCNwpVS%V`+_%y(W$|iLthm3o*>L7A_LZ=ut0#VU~BYL}7`O zgr)t)Ax&xt*B94x{U2RNqm|%^l(Pg=6HzGIX_oe{bQg|~vmA^}Ok=Rb3!spaO;~;J z2&lzr(2C|-Vjlw;hVTheHbNR0l2s%I7)Z&j?=z7SW`TO*UUgG2pUinnWSz%DVWnP3 z{S^|$LBOHACRs_-j;J3+%-9k6CR%Q!Q9@72qLqdupLA;Gm1L(^Bj>*Vc#VHigQ9wa zgO-!G*ds|3q&`$bS-q;|MY)o{DKpI^28&T$KIf9vRP{2k85&k}g=K7w8s;d<-Bz+L zDcnFo3-K<)2%C;jr^tTmjoPFRLV^7yRig+oQ4)eh`<_SX63q9w3F|0LmV%?GAaGb6 zd!Q^wZ^5|}tCinf68cKv6CP->y!XUIBzc%>vd|v6)CI8GI8xFAmr||4$Rnp*e82!U zUiN>g=3ulVTGx0W!X*MdCq7Z@m_FTTYP3pGAn1h0DMSuXE>W9_a)N2ne~wIBdq9k0 z@!6e=L&OZBB~4vqp%Cfxj7fFqAR!Y+2q7;H*Ki+HG`y{C5N;ewiX*lsj(ciL!WU9u zVhu4!!bzGt$h|>m^q+5zMgh(8WYSqTN(H$#vR;P*=ja(M5t=Ph z{khNA6?r_6Qi5m8ENxDqo~`k3lV3}eZ8BOCHAe8ay-Ea=jtriFa$YZ*sienOxRocy zFRSM8@Bp{R$p!keNFN6?3Mz4&C3l*1pHj$$r!{w3&}G=avn@+)mZJGKEi&W5{FI@y zBok<}#q)4{!6kS#rE>V`W);z{*>}&X6yS^GOm=+{K6~rhb83Qz9;?Z9W z6S6BwWh|8$@ADwl@(D2lZ%e=R-{$|C#{a(~jkAElg*3W|4P2Ho(`@Rms0@-LOlm>y z6rV(FT_J9lle0)7BRj;lglG(jt_Pp2_-s$s2!9HO3yfRv1XLWBWZ6j;B+}F;#xl5_ z@Q>6*(;4pv*$|f22?pV?n%c2daNaIO7f4^kr-($W%2I8s@}UWgLEcZ;Sxi4ONrnv0gEVW2~zygy6NjJ}fE(l~fLFne zKvq!TcE0(>xYa|X4#U9>3TX)8wv+h?V8IA8Jo6zF#55`!o(?^Pn}hvuYRkwaYa3>? zjp~t)XAW}&N8xI61F$v?+QuqiOuIwOWNrrq!ubI*(fTytI~5YPrSB)Gn?v z8KwB)>Tqlo8krUqq6ivSy9;QnuUsp))5~Q(o;p{VTr5cGegZONaz=(4WNOt8Ad@O` z7tpjEHBlQVg9MO)R&^?+F4DJ_TLO;Nd}lA9XGZFeu0K0&sa5G^y8gQImW*^CM?I^P zr8rT$y8isiI<9g#Bb((DWki#oOrxnR;z(({w7fRR=e-oStP5(5j2CbMFMP%R+4D5w zvW$AqIH=a>Q9~?xqeidfGPPQzQfjrnTJ&D}TY02Cb=H-7PDKR;dh1pm zYp0UydO|3IuBRO~~xvBKwXYjmq!xOdJIu(McSP#b;6Ev?nH%u?xnsDoeS7m!f9$#zAGL)#ZR!auvxB47StImYw-( zwE?aQ1+;ym+)w6b#SA}moaunvUZX%kx&pfnd{wT5hH(phKfqf=>{XT2AAO5@|@VOa~fPOh)z?YC6+g>Y-^aXUH@csl{hZ0VGU^*Xt|nt5U8O;0EnWFq z;u$f^*9YltrjOBQ8Fqdujn4Fju7@s?(^aT59neJrx^$*5b*7W7RQU(A)0OWceZi;# zhYxTLf67>LfYPHiP*SrRfOcITDW;l6j+*OhU#3+)%~U#_X(?zuk1|?dpw9HEo9Rbg zgf2p@^TY}J`&q6_ft1X}s3#_B3k5NXoJpSx>DO81z%Ep)!Av=cfcU11(5UQy0ccql zL8=Bg05xi@21DO8msqV~pr}ErM(YGLY^Q6-k~LI^hFEzA+_|Ts3m!sIA*S*(N^En$ zbLga;xKREhaRJ4E4A`P2+Bu*))2C{=F2_YsQW-bX6Ss1iTlpO@K&@7jmZ2Z`W1L(7 z?tnsUp^~NhIrO@CK za13S8Xxu97K$RBk&Cz)>7<-QmVz9@Pp?8HtCBBI8O=BJ0!w7Y&aAxhH0Wb!@4^i0z z+_58cilD)(R%=vB(bunkZPubP;klsD|ka)~e3* zGo;95RpCYwtEgp9<6oBt{ek}RQd%t_1oD$Zj@UVKIo-n{(U7J~qsf|POchWi4f7&c zO9L^Mji-CSWtxZNYF!WBvz4fh@d$IULcMKN$_rkh=ccGPM5T^%JE>{ipa)DPF*e&C z<`bFXWKNP>CBDa`kqVjKjfQE%sTx^EZCQD$K)@){LsAjTG^94o}e;~y6O;R0|A}>+8i_Q8+ zck;w%MX53FE1-KC7X6hp}dt)vx*sL=UvlA7_gWD85=}uWPQbcWWTGm)m28 zgb_eHOsGnGooO0vmdWkaNFz%Tg$)igkHW0hl~LxWNNUG(H7ti2Fi0Gxw8!L$gCzW? z;6ILvPgdb-aw?tKUUcT1*qPZ?<3->Mq5K@PaSEe~6@kS<$@9(CXi={RC7hwnJ2>k> z2XEpaf(|wlN!)ZmQX&35Dftwy4AV8-GnuZrT$cpj1P8h#55bPyWUv9|XtXYg9l})7 zMQT|Q4_%~rAFZKFxJ%6rn=`hdEULp+t4o6MB*%qhLy5a+Zc*uaAW^0pMpl@vlx@r4 z2q&J*q?77QS>uQ`khkcC6H26X7wKt--Ts8i#N9k2wle^>$z98jZYCE1>6kL>=L zY9b;@XIg*{PqJL@zrfs3^CQLz(<-%`_0O~l6)EJdYUV!(XbV-t27x04Jz$N|fs0);{b$LD!CPt(_7!wGTFOxE`<DG zuU-nC)hu$Dgf)k8`=gFb&{fS9@J&v^j-}&sxiTR!TAv|)z@to$mG{!JGmG?CUrQg< zEjCF%0_%k8i}`A}EVWxH))3KSl@$7ZMzJ2>%FttFEIpPiqVM%!ed)|%#JHXCG0>Jl zA;$0^JQy4=6TGRi%C+;Go0s&793C3f5lgu*IeL^uO&zLs$$C{s ziv_UR!X(YuH}b^g7|magW9$>&+Ev`2j)~lBqCE&ykiE9q;y>Kl!t@Dhn zsjZuQJ#Z8m&oQl2uqb?H3L_zbpPhckCG4!hGRL(>js~=u|aFr~scb=GDXXs_ZWb$FnKa&-qIC=rE z=iB;4sqE$bj(8J_es(EuJ*5STP9scDKjJ=$oxvr>p0{F7z^(&JdjYN_)*?20i}B2Z zEMSEiu&a`gOCf?{__NZjFJ8+A3yH3#`Uq_KB@TP%GxN0$gZhg2XB5Gt_u6{WG(m`Z^F~|_0 z$EU*Br&S^Y@Ws-=umF8AR&32k%Pq*yj0`BtEDnfj>#T9sM5LKN0j5V4`Nfd|rA7Iz z+4r*2iUad<(u)d;3$jWAv0iZNwBo#=;l=$SX@b&6-_|~ zqAMRpM`S=k85TyxvY+hxI6+v?I3SqUP*Q{ioM}D#zerC=0J{!t7n_&HGoK@+2+PTV z&P=TKmNOh{w2>+G*LvAPtW}R6sUGtpdjG*`qCV}^loH8 z7QPRZY3>xOB)A%CMACz;Xpac4WC99A1d9^F)4Kon^S_A$GJKsLSo42!|KB9^%D!Il z!=YR*7%Kcu**iQpF>d00XPHXAw8HNIl0KEoWJX6s&+M9M6>@Jo!O+!S)68C`lvT8n z%alvo8X^pJEK*zy4hosDRQZ0q6hO#N&HX0QY{ejEQo%&^oDN8H7 z)rJb?%Z3U??ox#u&k4A;_x@#$!^>XvdTF}sZ_sE(7lU&pRWduYU%<#wBrEOR<%zLI z4};DgCmMH0EVqddixrpXquU!B85&Tkqq}cqD%KNapHtH(CH2soKSN~;s9x-A>P$?FKW}qE}iPGq6sLP4>NKWb&NL8>!sRQ{E--ZfVfF`xN1fAr?*wZf?Jm2&y#B4^p7UNl zeEQ-C`E8A-H2Un%e*JdOoNJwwZRJOvd#nE>rNeKAH$7i@ebZ{6-=n`;_WYs8ku!Jv z^lf3wN0)w@v2W4ai;hR!(=8aWaht=r!Iyou-<^{_dB~8bj>8Y^{x#rI_6KXc2aNc5 zg6fQO?w*_WpN$w2y?BMoH;-@5sk80(3A^7}^NEk~%r{%Vymb54+1jsd>NWeDWhbUA zQw8n8-SGB)-sexv4LzMv*5uiaAh*3gUU_j=+~ZD;dvm{A8!|rn?(!d_3!h}p$b0mt z=O+($&1>eRY<@g%#rL}&?_|twZYzAi9^BAfs*PeBMof~;Y(XBZ8@=pS<>l6 zxz>^n7L`-f;h1RB%peprw6s@aINITsuuR$1(AdyWJU7TDdYLOMNG~q5uF+C4FsPsy zG9jUT@Vg(sa!qBL(Wm3o2VUV>&qefWo_F-bx08~ml{xArk8bzc$-fjr{S=eBbXaupLc7>TcN@hw8}jmeFt6w;s~gZCHDK?hpNkpQ=~1adxALbxwQ!us-(Z zvybPm_wc;&&Vb*h%!$37tn7T|S>rSIo!kAkdFP!=E(_!zKIyLwYVz^!HmTlGue-jy zvv%84Z@-c5n{_B9^}DurT{I3Y15Tg*C`x#E*|~rAmrs`ZDVlxT?*8sCCS@g=-hF%f zJ+DD0ziPB`exsWU4|P}(+pm0XE$@3hfkT&pLr2UwG$l(bEhf1}(&is)*eF8qwfUmj$Esd^Bv4LJH zpclf38Afk|Cl%MYyTx=*=-#2b9w^C{&dJ5IBr*N-h&ZBQ+>9Hs}J|>f&jgo%~ zNvkXFyu9kgQ^U4=)xX(|U)}Xi4;TIXT zXS9=`J=@`Ydi8@Xdt5^f7F|_0I_$+EsY2Enoa$%=O4Xu{1WFkJ6SsDrazN>FOxb5v zv-k5O{Tk<10VSF!IVb^y07`P1U~s3jhDs-cM#K$;x;n6GPvz<<0aXS-)zTIdjWvQ* zb(0Z;suHmYK-FMFmLXC+H^?ojE3rnZU{oi-A$-jVfZU-XI+g)js`QCvN zqhi~4{#&FXY=~4 zP<*{8X=(lA%l9sw{;>O(o9z9c`uA@aJ2qp+`+hunyJea?W$ zbCE4KZ#d9r{bzli4JxTUDzuasT;m6cD@to^=xN+=C;D02evSMFzI5T@knn|{T)i1}d6RoovO<~QIHTyq zwZ}Ur&FHx)%nL~O6i9d3jC9S4PnV>-b?x_JNatS+y^G>)k?!wA3_`PTm|rlt=%)&r zm5;9;&Yb=T&YUXY3==*DzwDU1%==X6XWOTYE}UH0Gb`u%h^PDK6pcFC zu>3}7#lo}dTCI$m^Va$7@jU5#^y!xKpFG~!Y1q$?Zl=$?e&_m;zDl<->l_CrUVZNF z?qIpgv9A4%?!kUJE)y2T&f7ap_iFaKdh2u6*v~5$&dwY&*XQzLuZ*+9KOfj3IR4^m z;|30i4R`P0zkJ8znUA8|-AIsc?lSJ|g>#YHSKswM6+Qm7aV>5{+g}*FI4bewX-&R6 zGkpK9`_uix4u5oLU<1Vuqq?pUajgWLDzw72YJp3_wRJbY9k^q_z2-9Alj+koB^R~q zSa8Q0*X%zsI1x56V@r;3D+$!MA(>v*pw^Dk^-ACuY$hk>!fZ0i`SZW$uA~4HH2Yck=PJ0Fw2lpBL@DZ z>PjTKVeK)xK{m7YEUvd1&dk;uHEvbsuQt5nw9}~%8cIzyjS@2 z__v2IdA*~FDIGXu{5$&=ysS6w`1)zrqwWt}?W034 z@^YJ*yM;Rb`4{qj?^SlIyy1?c?#CXVX?D1LYws!DZlAg9*g5pzglFmx=A~Y9b3b?f zQ^nfeKIi+-vfo|z^N6VB`XxEXaz6fa?}4^IeOh$?YTbDk=B%F>WT>!v4=6atjDW3N z!i0HScYS+$by(hzVaYF8vdj@a=h*5&=HFm5)i?Mvm~rtz)CG`X?X0wSv zuoY%rqa_H2wJ?UXXc^uz93JRh3;H_58ntXlDBYaw453CtOQQ?=11wWJ*(aurEXXf2 zigulos%vIW;i#N!qZhn*6mf8J#rK#qit*`U+Edq@#jhzi~l%;Ws#%IFzEorXD zS0r#(xse{9{lgcSiu4_F3Uh-3@aNH%O zO`C;hC$?XpivFcI$-dK-;Db38zbl+nC)QET3*Y{&IQM-q}etOA`(yS#e z>Z$K;YtweyxC?iF@gCJ_RDHLMUXiJD%iKfm_w-mi==z!015>K(qte{Gh-qwN>lf4U(4tiy(b{SPL%rCn_7I63fS+r;iYQp)38&OO?{_Xqp* z==c`D3{G{N5!U;G?~@-}h@iV3oLXZAx=m*eeD+GhqiYY}9kTuC!^>TE#UIgGc({?7 zqwOwVed5;Y))xP(xy5ZC&Tf6l8gx}A8_=!Bj8wpkbQm}>PB!sDdw?DMVx_C0BQyyh z9A$vlYX!n`15LPQR~8`bYXQRelnY^SK}JCkKKR9;IELz}r;ISPHiRvGerf2$5DRmZ zmrYOOz|F82qlyNVc}y__GS^^hkG2)thdnCQ2RECw{b%)+Amn7GA7Cs-Z5S9^R=@&I zzHUkkxbj+Q_%3O2aXYrfw^%ZZs4W}tVR+r}XxC0lnvLyn>Gp=@OGXU%+V`z5!q@bh z5b^T(QN!0>aCms6q(#)*9xcO@6ONzFOxFZ{^xWhoZywgSzp=Wjwu7*L13Zhu$Bp8ksk*X{%qmIz4IK z@8r_vJqnNKe--z5V6)@(Z;iiVKX$lo?WMv#_1+$&(#I^`n)zK|W5?FMO=tFN?%T~J z>b2hre%e1b@!?k2op0S+RF;jVYIkwjB;#Z^<$z;C1-~3qbt$I=P}<=pJAR*a*wzWSMU>>7z^W zQB{1Ky^KPK#ul(%!zJJj!)cfZ+<)`D@@EmkcjwPYA2Bm@+$&$6`8nI@cI^wlCr01* zKN!?IYWB_-FD~(G5aQN&=+2%qR~%iuxZ(S$x9ljT})>N ze7)<*s^E_r-g`Lmn`x=8dpjgY%!n{{JXE+&wMuhw{l~I`8Q%3Tq=uc|ukPRJ{qfPa zgM?NdALv$>&FXb{lFR5*gPOkcl3`cfEmMm&$Nh5givPm_T?duDDz{%U?xdrLpa>1g z608vP!}Tx8BOkqcC*tMlYj1|lzy57V$O#JstrlRdV}uh~-1;xL40Vt$mA1)D=V%E2u1JQ?3VvE6toEH zW56mZ5Q~sU$;0>Ed~mSMlpmb(5;orHHmm#kyFM3?elM+a z`ueu}nGW^i>&5gQfAuB(h_ufWe)%vnVdeb^v8wf>avEpOXxi@8v!h%044=BPUSZkV zy!QIHjymNkrglACteW#vzv-=&JKkD0rrx3S*0olgs8x4GuTCMWe%+JN>C4si61#;M ziuV?58(HyY%Cn9i4h`^~?D(MW>d<$8pL*}ixXh_jjlGS>p1r+2>RH z5eK_0>bbtFy7Q>lF1+3A!u081G`h6u)Q@3%SKioP{zl88tNNsM*1W#COZ%a=ijuHn624l`=keb(&F)5r7&r(A9FQpj|#v!ml$_8RB za^8Q0LNhq`!%GKNT|U~k;k7Z>W3^>jgRcY}-hONTgoJr+5e}~$8@IDb6ZgkM4kk^T zm2!A*=6w6bN8(;Qv8C1Qj?rUOXO2FKxwRuZ?b+D)a~~SUrkE~Xt{vWGg|R}}8#Z~O zTqZM=&-|NhZnuSLJOg2ZhneB3p?&J<=^RM`oQ%=e6L& ziFe%`lt$cO=r#X+$6xxNEWh~V*t|WvzX-hawcTUO2@W@Mloc|e%{#jjKA)fMkT7QJ zXQL;2gpTuCHtb-^<~6&XtGl;-?W3`oKWuUd{r$dX*6G;eqmEZxd*rooZ@-1%M{X)V z=zeGR!kFa?k6u_)>{7AarQ__u(Jwa7i94;I+2wBMK~rPie&^>&U*-RF{qwu_-QDR_PQPxA zYv0-(Irx`>tADQdL(e1q`@ZnpM~?=-a{byg-(i!_)&J^V`Ofg$hX;>-b!VxzpK8Cu zjg9BJzA?GO#AZIiX_?2djo&qzy?)}CWt#G-DLZrC*?e)%*9SiT($nqZtD7J0Zq{jw zQt7tn*5lLXsQPpy`IcF>WPytrAqTP@nz?qF2gXVRWoK zQOTeyl{t1s7Z&|O$if)f!q6h5Ulmc#P_X~_H<4W?cH5nG`+SANk~uxbl&yJ5So{9@&fOi7^6t4j?{vD0 z*U-Rg7d`at;>M(}N_)ER#Fu;bXSAIslt@y&H_kqLf_8IKGz3QyI zedRem3C8Z$3)9WN5EBcS`j_r?3>icdzHI zd0etQwe9%U&wXIbc{hFQf$!Y=9Cj5B1lZ WGrk|PZ`-hGmz3AP`Hmj36aEKPgt!U- literal 0 HcmV?d00001 diff --git a/Feliz.Plotly.sln b/Feliz.Plotly.sln new file mode 100644 index 0000000..d147219 --- /dev/null +++ b/Feliz.Plotly.sln @@ -0,0 +1,72 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.29009.5 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".paket", ".paket", "{63297B98-5CED-492C-A5B7-A5B4F73CF142}" + ProjectSection(SolutionItems) = preProject + paket.dependencies = paket.dependencies + paket.lock = paket.lock + paket.references = paket.references + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "project", "project", "{BF60BC93-E09B-4E5F-9D85-95A519479D54}" + ProjectSection(SolutionItems) = preProject + .editorconfig = .editorconfig + .github\ISSUE_TEMPLATE\BUG_REPORT.md = .github\ISSUE_TEMPLATE\BUG_REPORT.md + .github\ISSUE_TEMPLATE\FEATURE_REQUEST.md = .github\ISSUE_TEMPLATE\FEATURE_REQUEST.md + .github\PULL_REQUEST_TEMPLATE.md = .github\PULL_REQUEST_TEMPLATE.md + README.md = README.md + RELEASE_NOTES.md = RELEASE_NOTES.md + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "git", "git", "{078A9C52-DDC1-46F4-9235-9E6C89C87AFD}" + ProjectSection(SolutionItems) = preProject + .gitattributes = .gitattributes + .gitignore = .gitignore + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".build", ".build", "{7C6D08E7-3EAC-4335-8F4B-252C193C27C9}" + ProjectSection(SolutionItems) = preProject + build.cmd = build.cmd + build.fsx = build.fsx + build.proj = build.proj + build.sh = build.sh + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{55637037-300B-4FA5-8D14-B2CECCCD4B0D}" +EndProject +Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "tools", "tools\tools.fsproj", "{E03A3045-EEAB-4616-B0D8-A50A1B75F72B}" +EndProject +Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "Feliz.Plotly", "src\Feliz.Plotly\Feliz.Plotly.fsproj", "{CD7DB804-3DF3-4973-97DE-A8B9325948EC}" +EndProject +Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "Feliz.Generator.Plotly", "src\Feliz.Generator.Plotly\Feliz.Generator.Plotly.fsproj", "{0E698120-F0AE-476D-858A-0DF55EACC584}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {E03A3045-EEAB-4616-B0D8-A50A1B75F72B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E03A3045-EEAB-4616-B0D8-A50A1B75F72B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E03A3045-EEAB-4616-B0D8-A50A1B75F72B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E03A3045-EEAB-4616-B0D8-A50A1B75F72B}.Release|Any CPU.Build.0 = Release|Any CPU + {CD7DB804-3DF3-4973-97DE-A8B9325948EC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CD7DB804-3DF3-4973-97DE-A8B9325948EC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CD7DB804-3DF3-4973-97DE-A8B9325948EC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CD7DB804-3DF3-4973-97DE-A8B9325948EC}.Release|Any CPU.Build.0 = Release|Any CPU + {0E698120-F0AE-476D-858A-0DF55EACC584}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0E698120-F0AE-476D-858A-0DF55EACC584}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0E698120-F0AE-476D-858A-0DF55EACC584}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0E698120-F0AE-476D-858A-0DF55EACC584}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {E03A3045-EEAB-4616-B0D8-A50A1B75F72B} = {55637037-300B-4FA5-8D14-B2CECCCD4B0D} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {96DAE6A9-B1CC-4FF7-B08C-D5FBFD55B385} + EndGlobalSection +EndGlobal diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..7b36e71 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 Shmew + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..d65ff3d --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Feliz.Plotly + +Pre-alpha - not ready for use \ No newline at end of file diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md new file mode 100644 index 0000000..6edf479 --- /dev/null +++ b/RELEASE_NOTES.md @@ -0,0 +1,2 @@ +#### 0.0.1 - Saturday, October 12, 2019 +* Initial build \ No newline at end of file diff --git a/build.cmd b/build.cmd new file mode 100644 index 0000000..51ce9b1 --- /dev/null +++ b/build.cmd @@ -0,0 +1,6 @@ +@echo off +cls + +dotnet restore build.proj + +fake build %* \ No newline at end of file diff --git a/build.fsx b/build.fsx new file mode 100644 index 0000000..d2abbee --- /dev/null +++ b/build.fsx @@ -0,0 +1,408 @@ +// -------------------------------------------------------------------------------------- +// FAKE build script +// -------------------------------------------------------------------------------------- +#nowarn "0213" +#r "paket: groupref FakeBuild //" +#load "./tools/FSharpLint.fs" +#load "./.fake/build.fsx/intellisense.fsx" + +open Fake.Core +open Fake.Core.TargetOperators +open Fake.DotNet +open Fake.IO +open Fake.IO.FileSystemOperators +open Fake.IO.Globbing.Operators +open Fake.Tools +open Fantomas.FakeHelpers +open Fantomas.FormatConfig +open Tools.Linting +open System +open System.IO + +// The name of the project +// (used by attributes in AssemblyInfo, name of a NuGet package and directory in 'src') +let project = "Feliz.Plotly" + +// Short summary of the project +// (used as description in AssemblyInfo and as a short summary for NuGet package) +let summary = "Fable bindings written in the Feliz-style for plotly.js" + +// File system information +let solutionFile = "Feliz.Plotly.sln" + +// Github repo +let repo = "https://github.com/Shmew/Feliz.Plotly" + +// Files to skip Fantomas formatting +let excludeFantomas = + [ __SOURCE_DIRECTORY__ @@ "src/Feliz.Plotly/Props/*.fs" + __SOURCE_DIRECTORY__ @@ "src/Feliz.Plotly/Types.fs" + __SOURCE_DIRECTORY__ @@ "src/Feliz.Plotly/Interop.fs" + __SOURCE_DIRECTORY__ @@ "src/Feliz.Plotly/Plotly.fs" ] + +// Files that have bindings to other languages where name linting needs to be more relaxed. +let relaxedNameLinting = + [ __SOURCE_DIRECTORY__ @@ "src/Feliz.Plotly/**/*.fs" + __SOURCE_DIRECTORY__ @@ "src/Feliz.Plotly/*.fs" ] + +// Read additional information from the release notes document +let release = ReleaseNotes.load (__SOURCE_DIRECTORY__ @@ "RELEASE_NOTES.md") + +// Helper active pattern for project types +let (|Fsproj|Csproj|Vbproj|Shproj|) (projFileName:string) = + match projFileName with + | f when f.EndsWith("fsproj") -> Fsproj + | f when f.EndsWith("csproj") -> Csproj + | f when f.EndsWith("vbproj") -> Vbproj + | f when f.EndsWith("shproj") -> Shproj + | _ -> failwith (sprintf "Project file %s not supported. Unknown project type." projFileName) + +let srcGlob = __SOURCE_DIRECTORY__ @@ "src/**/*.??proj" +let fsSrcGlob = __SOURCE_DIRECTORY__ @@ "src/**/*.fs" +let fsTestGlob = __SOURCE_DIRECTORY__ @@ "tests/**/*.fs" +let bin = __SOURCE_DIRECTORY__ @@ "bin" +let temp = __SOURCE_DIRECTORY__ @@ "temp" +let objFolder = __SOURCE_DIRECTORY__ @@ "obj" +let dist = __SOURCE_DIRECTORY__ @@ "dist" + +let foldExcludeGlobs (g: IGlobbingPattern) (d: string) = g -- d +let foldIncludeGlobs (g: IGlobbingPattern) (d: string) = g ++ d + +let fsSrcAndTest = + !! fsSrcGlob + ++ fsTestGlob + -- (__SOURCE_DIRECTORY__ @@ "src/**/obj/**") + -- (__SOURCE_DIRECTORY__ @@ "tests/**/obj/**") + -- (__SOURCE_DIRECTORY__ @@ "src/**/AssemblyInfo.*") + -- (__SOURCE_DIRECTORY__ @@ "src/**/**/AssemblyInfo.*") + +let fsRelaxedNameLinting = + let baseGlob s = + !! s + -- (__SOURCE_DIRECTORY__ @@ "src/**/AssemblyInfo.*") + -- (__SOURCE_DIRECTORY__ @@ "src/**/obj/**") + -- (__SOURCE_DIRECTORY__ @@ "tests/**/obj/**") + match relaxedNameLinting with + | [h] when relaxedNameLinting.Length = 1 -> baseGlob h |> Some + | h::t -> List.fold foldIncludeGlobs (baseGlob h) t |> Some + | _ -> None + +let setCmd f args = + match Environment.isWindows with + | true -> Command.RawCommand(f, Arguments.OfArgs args) + | false -> Command.RawCommand("mono", Arguments.OfArgs (f::args)) + +let configuration() = + FakeVar.getOrDefault "configuration" "Release" + +// -------------------------------------------------------------------------------------- +// Set configuration mode based on target + +Target.create "ConfigDebug" <| fun _ -> + FakeVar.set "configuration" "Debug" + +Target.create "ConfigRelease" <| fun _ -> + FakeVar.set "configuration" "Release" + +// -------------------------------------------------------------------------------------- +// Generate assembly info files with the right version & up-to-date information + +Target.create "AssemblyInfo" <| fun _ -> + let getAssemblyInfoAttributes projectName = + [ AssemblyInfo.Title (projectName) + AssemblyInfo.Product project + AssemblyInfo.Description summary + AssemblyInfo.Version release.AssemblyVersion + AssemblyInfo.FileVersion release.AssemblyVersion + AssemblyInfo.Configuration <| configuration() + AssemblyInfo.InternalsVisibleTo (sprintf "%s.Tests" projectName) ] + + let getProjectDetails projectPath = + let projectName = Path.GetFileNameWithoutExtension(projectPath) + ( projectPath, + projectName, + Path.GetDirectoryName(projectPath), + (getAssemblyInfoAttributes projectName) + ) + + !! srcGlob + |> Seq.map getProjectDetails + |> Seq.iter (fun (projFileName, _, folderName, attributes) -> + match projFileName with + | Fsproj -> AssemblyInfoFile.createFSharp (folderName "AssemblyInfo.fs") attributes + | Csproj -> AssemblyInfoFile.createCSharp ((folderName "Properties") "AssemblyInfo.cs") attributes + | Vbproj -> AssemblyInfoFile.createVisualBasic ((folderName "My Project") "AssemblyInfo.vb") attributes + | Shproj -> () ) + +// -------------------------------------------------------------------------------------- +// Copies binaries from default VS location to expected bin folder +// But keeps a subdirectory structure for each project in the +// src folder to support multiple project outputs + +Target.create "CopyBinaries" <| fun _ -> + !! srcGlob + -- (__SOURCE_DIRECTORY__ @@ "src/**/*.shproj") + |> Seq.map (fun f -> ((Path.getDirectory f) @@ "bin" @@ configuration(), "bin" @@ (Path.GetFileNameWithoutExtension f))) + |> Seq.iter (fun (fromDir, toDir) -> Shell.copyDir toDir fromDir (fun _ -> true)) + +// -------------------------------------------------------------------------------------- +// Clean tasks + +Target.create "Clean" <| fun _ -> + let clean() = + !! (__SOURCE_DIRECTORY__ @@ "tests/**/bin") + ++ (__SOURCE_DIRECTORY__ @@ "tests/**/obj") + ++ (__SOURCE_DIRECTORY__ @@ "tools/bin") + ++ (__SOURCE_DIRECTORY__ @@ "tools/obj") + ++ (__SOURCE_DIRECTORY__ @@ "src/**/bin") + ++ (__SOURCE_DIRECTORY__ @@ "src/**/obj") + |> Seq.toList + |> List.append [bin; temp; objFolder; dist] + |> Shell.cleanDirs + TaskRunner.runWithRetries clean 99 + +Target.create "CleanDocs" <| fun _ -> + let clean() = + Shell.cleanDirs ["docs"] + TaskRunner.runWithRetries clean 99 + +Target.create "PostBuildClean" <| fun _ -> + let clean() = + !! srcGlob + -- (__SOURCE_DIRECTORY__ @@ "src/**/*.shproj") + |> Seq.map ( + (fun f -> (Path.getDirectory f) @@ "bin" @@ configuration()) + >> (fun f -> Directory.EnumerateDirectories(f) |> Seq.toList ) + >> (fun fL -> fL |> List.map (fun f -> Directory.EnumerateDirectories(f) |> Seq.toList))) + |> (Seq.concat >> Seq.concat) + |> Seq.iter Directory.delete + TaskRunner.runWithRetries clean 99 + +Target.create "PostPublishClean" <| fun _ -> + let clean() = + !! (__SOURCE_DIRECTORY__ @@ "src/**/bin" @@ configuration() @@ "/**/publish") + |> Seq.iter Directory.delete + TaskRunner.runWithRetries clean 99 + +// -------------------------------------------------------------------------------------- +// Restore tasks + +let restoreSolution () = + solutionFile + |> DotNet.restore id + +Target.create "Restore" <| fun _ -> + TaskRunner.runWithRetries restoreSolution 5 + +// -------------------------------------------------------------------------------------- +// Build tasks + +Target.create "Build" <| fun _ -> + let setParams (defaults:MSBuildParams) = + { defaults with + Verbosity = Some(Quiet) + Targets = ["Build"] + Properties = + [ + "Optimize", "True" + "DebugSymbols", "True" + "Configuration", configuration() + "Version", release.AssemblyVersion + "GenerateDocumentationFile", "true" + "DependsOnNETStandard", "true" + ] + } + restoreSolution() + MSBuild.build setParams solutionFile + +// -------------------------------------------------------------------------------------- +// Publish net core applications + +Target.create "PublishDotNet" <| fun _ -> + let runPublish (project: string) (framework: string) = + let setParams (defaults:MSBuildParams) = + { defaults with + Verbosity = Some(Quiet) + Targets = ["Publish"] + Properties = + [ + "Optimize", "True" + "DebugSymbols", "True" + "Configuration", configuration() + "Version", release.AssemblyVersion + "GenerateDocumentationFile", "true" + "TargetFramework", framework + ] + } + MSBuild.build setParams project + + !! srcGlob + -- (__SOURCE_DIRECTORY__ @@ "src/**/*.shproj") + -- (__SOURCE_DIRECTORY__ @@ "src/**/*.vbproj") + |> Seq.map + ((fun f -> (((Path.getDirectory f) @@ "bin" @@ configuration()), f) ) + >> + (fun f -> + Directory.EnumerateDirectories(fst f) + |> Seq.filter (fun frFolder -> frFolder.Contains("netcoreapp")) + |> Seq.map (fun frFolder -> DirectoryInfo(frFolder).Name), snd f)) + |> Seq.iter (fun (l,p) -> l |> Seq.iter (runPublish p)) + +// -------------------------------------------------------------------------------------- +// Lint and format source code to ensure consistency + +Target.create "Format" <| fun _ -> + let config = + { FormatConfig.Default with + PageWidth = 120 + SpaceBeforeColon = false } + + fsSrcAndTest + |> (fun src -> List.fold foldExcludeGlobs src excludeFantomas) + |> List.ofSeq + |> formatCode config + |> Async.RunSynchronously + |> printfn "Formatted files: %A" + +Target.create "Lint" <| fun _ -> + fsSrcAndTest + -- (__SOURCE_DIRECTORY__ @@ "src/**/AssemblyInfo.*") + |> (fun src -> List.fold foldExcludeGlobs src relaxedNameLinting) + |> (fun fGlob -> + match fsRelaxedNameLinting with + | Some(glob) -> + [(false, fGlob); (true, glob)] + | None -> [(false, fGlob)]) + |> Seq.map (fun (b,glob) -> (b,glob |> List.ofSeq)) + |> List.ofSeq + |> FSharpLinter.lintFiles + +// -------------------------------------------------------------------------------------- +// Run the unit test binaries + +Target.create "RunTests" <| fun _ -> + !! ("tests/**/bin" @@ configuration() @@ "**" @@ "*Tests.exe") + |> Seq.iter (fun f -> + CreateProcess.fromCommand(setCmd f []) + |> CreateProcess.withTimeout (TimeSpan.MaxValue) + |> CreateProcess.ensureExitCodeWithMessage "Tests failed." + |> Proc.run + |> ignore) + +// -------------------------------------------------------------------------------------- +// Generate Paket load scripts +Target.create "LoadScripts" <| fun _ -> + let frameworks = + __SOURCE_DIRECTORY__ @@ "bin" + |> Directory.EnumerateDirectories + |> Seq.map (fun d -> + Directory.EnumerateDirectories d + |> Seq.map (fun f -> DirectoryInfo(f).Name) + |> List.ofSeq) + |> List.ofSeq + |> List.reduce List.append + |> List.distinct + |> List.reduce (fun acc elem -> sprintf "%s --framework %s" elem acc) + |> function + | e when e.Length > 0 -> + Some (sprintf "--framework %s" e) + | _ -> None + + let arguments = + [Some("generate-load-scripts"); frameworks] + |> List.choose id + |> List.reduce (fun acc elem -> sprintf "%s %s" acc elem) + + arguments + |> CreateProcess.fromRawCommandLine ((__SOURCE_DIRECTORY__ @@ ".paket") @@ "paket.exe") + |> CreateProcess.withTimeout (TimeSpan.MaxValue) + |> CreateProcess.ensureExitCodeWithMessage "Failed to generate paket load scripts." + |> Proc.run + |> ignore + +// -------------------------------------------------------------------------------------- +// Build NuGet package + +Target.create "NuGet" <| fun _ -> + Paket.pack(fun p -> + { p with + OutputPath = bin + Version = release.NugetVersion + ReleaseNotes = Fake.Core.String.toLines release.Notes + ProjectUrl = repo + MinimumFromLockFile = true + IncludeReferencedProjects = true }) + +// -------------------------------------------------------------------------------------- +// Release Scripts + +Target.create "GitPush" <| fun p -> + let msg = + p.Context.Arguments + |> List.choose (fun s -> + match s.StartsWith("--Msg=") with + | true -> Some(s.Substring 6) + | false -> None) + |> List.tryHead + |> function + | Some(s) -> s + | None -> (sprintf "Bump version to %s" release.NugetVersion) + + Git.Staging.stageAll "" + Git.Commit.exec "" msg + Git.Branches.push "" + +Target.create "GitTag" <| fun _ -> + Git.Branches.tag "" release.NugetVersion + Git.Branches.pushTag "" "origin" release.NugetVersion + +// -------------------------------------------------------------------------------------- +// Run all targets by default. Invoke 'build -t ' to override + +Target.create "All" ignore +Target.create "Dev" ignore +Target.create "Release" ignore + +"Clean" + ==> "AssemblyInfo" + ==> "Restore" + ==> "Build" + ==> "PostBuildClean" + ==> "CopyBinaries" + +"Build" ==> "RunTests" + +"Build" + ==> "PostBuildClean" + ==> "PublishDotNet" + ==> "PostPublishClean" + ==> "CopyBinaries" + +"Restore" ==> "Lint" +"Restore" ==> "Format" + +"Format" + ?=> "Lint" + ?=> "Build" + ?=> "RunTests" + ?=> "CleanDocs" + +"Restore" ==> "LoadScripts" + +"Clean" + ==> "GitPush" + ?=> "GitTag" + +"All" <== ["Lint"; "Format"; "RunTests"; "CopyBinaries" ] + +"All" + ==> "NuGet" + +"ConfigDebug" ?=> "Clean" +"ConfigRelease" ?=> "Clean" + +"Dev" <== ["All"; "ConfigDebug"] + +"Release" <== ["All"; "NuGet"; "ConfigRelease"] + +Target.runOrDefaultWithArguments "Dev" diff --git a/build.proj b/build.proj new file mode 100644 index 0000000..b677fc3 --- /dev/null +++ b/build.proj @@ -0,0 +1,25 @@ + + + + + netstandard2.0 + true + + + + $([System.IO.Path]::GetFullPath("$(MSBuildThisFileDirectory)")) + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build.sh b/build.sh new file mode 100644 index 0000000..e24952b --- /dev/null +++ b/build.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +# to properly set Travis permissions: https://stackoverflow.com/questions/33820638/travis-yml-gradlew-permission-denied +# git update-index --chmod=+x fake.sh +# git commit -m "permission access for travis" + +set -eu +set -o pipefail + +dotnet restore build.proj + +if [ ! -f build.fsx ]; then + fake run init.fsx +fi + +fake build $@ diff --git a/paket.dependencies b/paket.dependencies new file mode 100644 index 0000000..394c5c5 --- /dev/null +++ b/paket.dependencies @@ -0,0 +1,62 @@ +version 5.216.0 + +framework: auto-detect + +source https://nuget.org/api/v2 +source https://api.nuget.org/v3/index.json + +group Plotly + source https://nuget.org/api/v2 + source https://api.nuget.org/v3/index.json + + nuget Fable.Core ~> 3.1 + nuget Fable.Browser.Dom ~> 1.1 + nuget Feliz ~> 0.57 + nuget FSharp.Core ~> 4.7 + +group Generator + source https://nuget.org/api/v2 + source https://api.nuget.org/v3/index.json + + nuget Fake.IO.FileSystem ~> 5.16 + nuget FSharp.Core ~> 4.7 + nuget FSharp.Data ~> 3.3 + github plotly/plotly.js:bead43ff7d5cbcedfd2bf29c25cf01b1b4074df9 dist/plot-schema.json + +group Testing + source https://nuget.org/api/v2 + source https://api.nuget.org/v3/index.json + + nuget Expecto ~> 8.11 + nuget Expecto.BenchmarkDotNet ~> 8.11 + nuget Expecto.FsCheck ~> 8.11 + nuget Expecto.TestResults ~> 8.10 + nuget Foq ~> 1.8 + nuget FSharp.Core ~> 4.7 + nuget FSharp.Data ~> 3.1 + +group Tooling + source https://nuget.org/api/v2 + source https://api.nuget.org/v3/index.json + + nuget Fake.IO.FileSystem ~> 5.16 + nuget FSharp.Core ~> 4.7 + nuget FSharpLint.Core ~> 0.12 + + clitool dotnet-fable ~> 2.0 + clitool dotnet-fake ~> 5.16 + +group FakeBuild + source https://api.nuget.org/v3/index.json + + nuget Fake.Core.Target ~> 5.16 + nuget Fake.Core.ReleaseNotes ~> 5.16 + nuget Fake.DotNet.AssemblyInfoFile ~> 5.16 + nuget Fake.DotNet.Cli ~> 5.16 + nuget Fake.DotNet.FSFormatting ~> 5.16 + nuget Fake.DotNet.MSBuild ~> 5.16 + nuget Fake.DotNet.Paket ~> 5.16 + nuget Fake.IO.FileSystem ~> 5.16 + nuget Fake.Tools.Git ~> 5.16 + nuget FSharpLint.Core ~> 0.12 + nuget Fantomas ~> 3.0.0 \ No newline at end of file diff --git a/paket.lock b/paket.lock new file mode 100644 index 0000000..087c0ad --- /dev/null +++ b/paket.lock @@ -0,0 +1,1631 @@ +RESTRICTION: || (== netcoreapp3.0) (== netstandard2.0) + +GROUP FakeBuild +NUGET + remote: https://api.nuget.org/v3/index.json + BlackFox.VsWhere (1.0) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.0.0.1) - restriction: >= net45 + FSharp.Core (>= 4.2.3) - restriction: && (< net45) (>= netstandard2.0) + Dotnet.ProjInfo (0.36) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.6.2) - restriction: || (>= net461) (>= netstandard2.0) + System.ValueTuple (>= 4.4) - restriction: || (>= net461) (>= netstandard2.0) + Fake.Core.CommandLineParsing (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FParsec (>= 1.0.3) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Context (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Environment (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.FakeVar (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Context (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Process (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.FakeVar (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Diagnostics.Process (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.ReleaseNotes (5.16.1) + Fake.Core.SemVer (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.SemVer (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Runtime.Numerics (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Target (5.16.1) + Fake.Core.CommandLineParsing (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Context (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.FakeVar (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Process (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Control.Reactive (>= 4.2) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Reactive.Compatibility (>= 4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Tasks (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.FakeVar (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Xml (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Xml.ReaderWriter (>= 4.3.1) - restriction: && (< net462) (>= netstandard2.0) + System.Xml.XDocument (>= 4.3) - restriction: && (< net462) (>= netstandard2.0) + System.Xml.XPath (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.Xml.XPath.XDocument (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.Xml.XPath.XmlDocument (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.AssemblyInfoFile (5.16.1) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.Cli (5.16.1) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Process (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.MSBuild (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.NuGet (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Newtonsoft.Json (>= 12.0.2) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.FSFormatting (5.16.1) + Fake.Core.Process (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.MSBuild (5.16.1) + BlackFox.VsWhere (>= 1.0) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Process (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + MSBuild.StructuredLogger (>= 2.0.94) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.NuGet (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Process (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.SemVer (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Tasks (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Xml (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Net.Http (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Newtonsoft.Json (>= 12.0.2) - restriction: || (>= net462) (>= netstandard2.0) + NuGet.Protocol (>= 4.9.4) - restriction: || (>= net462) (>= netstandard2.0) + System.Net.Http (>= 4.3.4) - restriction: || (>= net462) (>= netstandard2.0) + Fake.DotNet.Paket (5.16.1) + Fake.Core.Process (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (5.16.1) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Diagnostics.FileVersionInfo (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.IO.FileSystem.Watcher (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Net.Http (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Net.Http (>= 4.3.4) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Tools.Git (5.16.1) + Fake.Core.Environment (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Process (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.SemVer (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Trace (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fantomas (3.0) + FSharp.Compiler.Service (>= 32.0) - restriction: >= netstandard2.0 + FParsec (1.0.3) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.0.0.1) - restriction: >= net40 + FSharp.Core (>= 4.2.3) - restriction: && (< net40) (>= netstandard1.6) + NETStandard.Library (>= 1.6.1) - restriction: && (< net40) (>= netstandard1.6) + FSharp.Compiler.Service (32.0) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.6.2) - restriction: || (>= net461) (>= netstandard2.0) + System.Collections.Immutable (>= 1.5) - restriction: || (>= net461) (>= netstandard2.0) + System.Diagnostics.Process (>= 4.1) - restriction: && (< net461) (>= netstandard2.0) + System.Diagnostics.TraceSource (>= 4.0) - restriction: && (< net461) (>= netstandard2.0) + System.Reflection.Emit (>= 4.3) - restriction: && (< net461) (>= netstandard2.0) + System.Reflection.Metadata (>= 1.6) - restriction: || (>= net461) (>= netstandard2.0) + System.Reflection.TypeExtensions (>= 4.3) - restriction: && (< net461) (>= netstandard2.0) + System.Runtime.Loader (>= 4.0) - restriction: && (< net461) (>= netstandard2.0) + System.Security.Cryptography.Algorithms (>= 4.3) - restriction: && (< net461) (>= netstandard2.0) + System.ValueTuple (>= 4.4) - restriction: >= net461 + FSharp.Control.Reactive (4.2) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.2.3) - restriction: || (>= net46) (>= netstandard2.0) + System.Reactive (>= 4.0) - restriction: || (>= net46) (>= netstandard2.0) + FSharp.Core (4.7) - restriction: || (>= net461) (>= netstandard2.0) + FSharpLint.Core (0.12.5) + Dotnet.ProjInfo (>= 0.31) - restriction: || (>= net461) (>= netstandard2.0) + FParsec (>= 1.0.3) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Compiler.Service (>= 32.0) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.6.2) - restriction: || (>= net461) (>= netstandard2.0) + Newtonsoft.Json (>= 12.0.2) - restriction: || (>= net461) (>= netstandard2.0) + Microsoft.Build (16.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.Build.Framework (>= 16.3) - restriction: || (>= net472) (>= netcoreapp2.1) + Microsoft.VisualStudio.Setup.Configuration.Interop (>= 1.16.30) - restriction: >= net472 + Microsoft.Win32.Registry (>= 4.3) - restriction: >= netcoreapp2.1 + System.Collections.Immutable (>= 1.5) - restriction: || (>= net472) (>= netcoreapp2.1) + System.Diagnostics.TraceSource (>= 4.0) - restriction: >= netcoreapp2.1 + System.Memory (>= 4.5.3) - restriction: || (>= net472) (>= netcoreapp2.1) + System.Reflection.Metadata (>= 1.6) - restriction: >= netcoreapp2.1 + System.Reflection.TypeExtensions (>= 4.1) - restriction: >= netcoreapp2.1 + System.Runtime.Loader (>= 4.0) - restriction: >= netcoreapp2.1 + System.Security.Principal.Windows (>= 4.3) - restriction: >= netcoreapp2.1 + System.Text.Encoding.CodePages (>= 4.0.1) - restriction: >= netcoreapp2.1 + System.Threading.Tasks.Dataflow (>= 4.9) - restriction: || (>= net472) (>= netcoreapp2.1) + Microsoft.Build.Framework (16.3) - restriction: || (>= net462) (>= netstandard2.0) + System.Runtime.Serialization.Primitives (>= 4.1.1) - restriction: && (< net472) (>= netstandard2.0) + System.Threading.Thread (>= 4.0) - restriction: && (< net472) (>= netstandard2.0) + Microsoft.Build.Tasks.Core (16.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.Build.Framework (>= 16.3) - restriction: >= netstandard2.0 + Microsoft.Build.Utilities.Core (>= 16.3) - restriction: >= netstandard2.0 + Microsoft.VisualStudio.Setup.Configuration.Interop (>= 1.16.30) - restriction: >= net472 + Microsoft.Win32.Registry (>= 4.3) - restriction: && (< net472) (>= netstandard2.0) + System.CodeDom (>= 4.4) - restriction: && (< net472) (>= netstandard2.0) + System.Collections.Immutable (>= 1.5) - restriction: >= netstandard2.0 + System.Linq.Parallel (>= 4.0.1) - restriction: && (< net472) (>= netstandard2.0) + System.Net.Http (>= 4.3.4) - restriction: && (< net472) (>= netstandard2.0) + System.Reflection.Metadata (>= 1.6) - restriction: && (< net472) (>= netstandard2.0) + System.Reflection.TypeExtensions (>= 4.1) - restriction: && (< net472) (>= netstandard2.0) + System.Resources.Extensions (>= 4.6) - restriction: >= netstandard2.0 + System.Resources.Writer (>= 4.0) - restriction: && (< net472) (>= netstandard2.0) + System.Threading.Tasks.Dataflow (>= 4.9) - restriction: >= netstandard2.0 + Microsoft.Build.Utilities.Core (16.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.Build.Framework (>= 16.3) - restriction: >= netstandard2.0 + Microsoft.VisualStudio.Setup.Configuration.Interop (>= 1.16.30) - restriction: >= net472 + Microsoft.Win32.Registry (>= 4.3) - restriction: && (< net472) (>= netstandard2.0) + System.Collections.Immutable (>= 1.5) - restriction: >= netstandard2.0 + System.Text.Encoding.CodePages (>= 4.0.1) - restriction: && (< net472) (>= netstandard2.0) + Microsoft.NETCore.Platforms (3.0) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net45) (< netstandard1.3) (>= netstandard2.0)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard2.0)) (&& (< net40) (< netstandard1.0) (>= netstandard2.0) (< portable-net45+win8)) (&& (< net40) (< netstandard1.0) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net40) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= net462)) (&& (>= net461) (< netstandard1.0) (>= netstandard1.6) (>= win8)) (&& (>= net461) (< netstandard1.3) (>= netstandard1.6) (>= wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= net461) (>= netstandard1.6) (>= wp8)) (>= netcoreapp2.0) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) (&& (< netstandard1.0) (>= netstandard2.0) (>= win8)) (&& (< netstandard1.3) (>= netstandard2.0) (< win8) (>= wpa81)) (&& (>= netstandard2.0) (>= uap10.0)) (&& (>= netstandard2.0) (>= wp8)) + Microsoft.NETCore.Targets (3.0) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.VisualStudio.Setup.Configuration.Interop (1.16.30) - restriction: >= net472 + Microsoft.Win32.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Registry (4.6) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) (&& (< net472) (>= netstandard2.0)) (>= netcoreapp2.1) + System.Security.AccessControl (>= 4.6) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Security.Principal.Windows (>= 4.6) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + MSBuild.StructuredLogger (2.0.110) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.Build (>= 14.3) - restriction: >= net46 + Microsoft.Build (>= 15.8.166) - restriction: && (< net46) (>= netstandard2.0) + Microsoft.Build.Framework (>= 14.3) - restriction: >= net46 + Microsoft.Build.Framework (>= 15.8.166) - restriction: && (< net46) (>= netstandard2.0) + Microsoft.Build.Tasks.Core (>= 14.3) - restriction: >= net46 + Microsoft.Build.Tasks.Core (>= 15.8.166) - restriction: && (< net46) (>= netstandard2.0) + Microsoft.Build.Utilities.Core (>= 14.3) - restriction: >= net46 + Microsoft.Build.Utilities.Core (>= 15.8.166) - restriction: && (< net46) (>= netstandard2.0) + NETStandard.Library (2.0.3) - restriction: || (&& (< net40) (>= net461) (>= netstandard1.6)) (&& (< net40) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (>= net45) (< netstandard1.3)) (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (>= net461) (>= netcoreapp2.0) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81)) (&& (< netstandard1.0) (>= portable-net45+win8) (< win8)) (&& (< netstandard1.0) (< portable-net45+win8) (>= portable-net45+win8+wpa81)) (&& (< netstandard1.0) (>= portable-net45+win8+wp8+wpa81) (< portable-net45+win8+wpa81)) (&& (< netstandard1.0) (>= win8)) (&& (< netstandard1.3) (< win8) (>= wpa81)) (>= uap10.0) (>= wp8) + Microsoft.Win32.Primitives (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.AppContext (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Collections (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Collections.Concurrent (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= uap10.0) (< uap10.1)) + System.Console (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Diagnostics.Debug (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Diagnostics.Tools (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Diagnostics.Tracing (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= uap10.0) (< uap10.1)) + System.Globalization (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Globalization.Calendars (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.IO (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.IO.Compression (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.IO.Compression.ZipFile (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.IO.FileSystem (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Linq (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Linq.Expressions (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Net.Http (>= 4.3.2) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Net.Primitives (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Net.Sockets (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.ObjectModel (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Reflection (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Reflection.Extensions (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Resources.ResourceManager (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Runtime (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Runtime.Extensions (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= uap10.0) (< uap10.1)) + System.Runtime.InteropServices (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= uap10.0) (< uap10.1)) + System.Runtime.InteropServices.RuntimeInformation (>= 4.3) - restriction: || (&& (>= net45) (< netstandard1.3)) (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (< netstandard1.0) (>= portable-net45+win8) (< win8)) (&& (< netstandard1.0) (< portable-net45+win8) (>= portable-net45+win8+wpa81)) (&& (< netstandard1.0) (>= win8)) (&& (< netstandard1.3) (< win8) (>= wpa81)) (&& (>= uap10.0) (< uap10.1)) + System.Runtime.Numerics (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= uap10.0) (< uap10.1)) + System.Security.Cryptography.Algorithms (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Security.Cryptography.Encoding (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Security.Cryptography.X509Certificates (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= uap10.0) (< uap10.1)) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Text.Encoding.Extensions (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Text.RegularExpressions (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Threading (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Threading.Timer (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= uap10.0) (< uap10.1)) + System.Xml.ReaderWriter (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (< netstandard1.4)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + System.Xml.XDocument (>= 4.3) - restriction: || (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81) (< wp8)) (&& (>= uap10.0) (< uap10.1)) + Newtonsoft.Json (12.0.2) - restriction: || (>= net461) (>= netstandard2.0) + NuGet.Common (5.3) - restriction: >= netstandard2.0 + NuGet.Frameworks (>= 5.3) - restriction: >= netstandard2.0 + System.Diagnostics.Process (>= 4.3) - restriction: && (< net472) (>= netstandard2.0) + System.Threading.Thread (>= 4.3) - restriction: && (< net472) (>= netstandard2.0) + NuGet.Configuration (5.3) - restriction: >= netstandard2.0 + NuGet.Common (>= 5.3) - restriction: >= netstandard2.0 + System.Security.Cryptography.ProtectedData (>= 4.3) - restriction: && (< net472) (>= netstandard2.0) + NuGet.Frameworks (5.3) - restriction: >= netstandard2.0 + NuGet.Packaging (5.3) - restriction: >= netstandard2.0 + Newtonsoft.Json (>= 9.0.1) - restriction: >= netstandard2.0 + NuGet.Configuration (>= 5.3) - restriction: >= netstandard2.0 + NuGet.Versioning (>= 5.3) - restriction: >= netstandard2.0 + System.Dynamic.Runtime (>= 4.3) - restriction: && (< net472) (>= netstandard2.0) + NuGet.Protocol (5.3) - restriction: || (>= net462) (>= netstandard2.0) + NuGet.Packaging (>= 5.3) - restriction: >= netstandard2.0 + System.Dynamic.Runtime (>= 4.3) - restriction: && (< net472) (>= netstandard2.0) + NuGet.Versioning (5.3) - restriction: >= netstandard2.0 + runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.debian.9-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.fedora.27-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.fedora.28-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.native.System (4.3.1) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1.1) + Microsoft.NETCore.Targets (>= 1.1.3) + runtime.native.System.Net.Http (4.3.1) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1.1) + Microsoft.NETCore.Targets (>= 1.1.3) + runtime.native.System.Security.Cryptography.Apple (4.3.1) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple (>= 4.3.1) + runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.debian.9-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.27-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.28-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.42.3-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.18.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.opensuse.42.3-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple (4.3.1) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + runtime.ubuntu.18.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + System.AppContext (4.3) - restriction: || (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.6)) + System.Buffers (4.5) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= monotouch) (>= netcoreapp2.1)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (>= net461) (>= netcoreapp2.1)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (>= net472) (&& (< netcoreapp2.0) (>= netcoreapp2.1)) (&& (>= netcoreapp2.1) (< netstandard1.1)) (&& (>= netcoreapp2.1) (< netstandard2.0)) (&& (>= netcoreapp2.1) (>= xamarinios)) (&& (>= netcoreapp2.1) (>= xamarinmac)) (&& (>= netcoreapp2.1) (>= xamarintvos)) (&& (>= netcoreapp2.1) (>= xamarinwatchos)) (&& (>= netstandard2.0) (>= uap10.0)) + System.CodeDom (4.6) - restriction: && (< net472) (>= netstandard2.0) + System.Collections (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Collections.Concurrent (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Collections.Immutable (1.6) - restriction: >= netstandard2.0 + System.Memory (>= 4.5.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net46) (>= uap10.1) + System.Console (4.3.1) - restriction: || (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1.2) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (< net45) (>= net462) (< netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Diagnostics.DiagnosticSource (4.6) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (< net45) (>= net462) (< netstandard1.6)) + System.Memory (>= 4.5.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (>= net45) (< netstandard1.3)) (&& (< net45) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net46) (>= uap10.1) + System.Diagnostics.FileVersionInfo (4.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Metadata (>= 1.4.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Process (4.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Registry (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.Text.Encoding.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Thread (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.ThreadPool (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Tools (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Diagnostics.TraceSource (4.3) - restriction: || (&& (< net461) (>= netstandard2.0)) (>= netcoreapp2.1) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Tracing (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (< net45) (>= net462) (< netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Dynamic.Runtime (4.3) - restriction: && (< net472) (>= netstandard2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq.Expressions (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.ObjectModel (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Reflection (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Reflection.Emit (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Emit.ILGeneration (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.TypeExtensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Globalization.Calendars (4.3) - restriction: || (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization.Extensions (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462) (>= netstandard1.6)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.IO.Compression (4.3) - restriction: || (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.IO.Compression.ZipFile (4.3) - restriction: || (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Buffers (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.Compression (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Watcher (4.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Overlapped (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Thread (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Collections (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.6) (< win8) (< wp8) (< wpa81)) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.6) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq.Expressions (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Linq.Parallel (4.3) - restriction: && (< net472) (>= netstandard2.0) + System.Collections (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Collections.Concurrent (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Tracing (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Memory (4.5.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= net462) (< netstandard1.3)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (< net45) (>= net462) (< netstandard1.6)) (&& (< net45) (>= net462) (>= netstandard2.0)) (&& (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= net46) (>= netstandard2.0)) (&& (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= net462) (>= uap10.1)) (>= net472) (>= netcoreapp2.1) (&& (>= netstandard2.0) (>= uap10.1)) + System.Buffers (>= 4.4) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (>= monotouch) (&& (>= net45) (< netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (< uap10.1) (>= wpa81)) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Numerics.Vectors (>= 4.4) - restriction: || (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net461) + System.Runtime.CompilerServices.Unsafe (>= 4.5.2) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (>= monotouch) (&& (>= net45) (< netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= uap10.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Net.Http (4.3.4) - restriction: || (&& (< net40) (>= net461) (>= netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Net.Http (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Diagnostics.Debug (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Diagnostics.DiagnosticSource (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Diagnostics.Tracing (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Globalization (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Globalization.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Net.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Resources.ResourceManager (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Runtime.InteropServices (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Security.Cryptography.Algorithms (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Security.Cryptography.OpenSsl (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.X509Certificates (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) (>= net46) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Threading (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) + System.Net.Primitives (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462) (< netstandard1.3)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (< net45) (>= net462) (< netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Net.Sockets (4.3) - restriction: || (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Net.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Numerics.Vectors (4.5) - restriction: || (&& (>= net461) (>= netcoreapp2.1)) (>= net472) (&& (< netcoreapp2.0) (>= netcoreapp2.1)) + System.ObjectModel (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Reactive (4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + System.Runtime.InteropServices.WindowsRuntime (>= 4.3) - restriction: && (< net46) (>= netstandard2.0) + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.ValueTuple (>= 4.5) - restriction: || (>= net46) (&& (< netstandard2.0) (>= uap10.0) (< uap10.1)) + System.Reactive.Compatibility (4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + System.Reactive.Core (>= 4.1.6) - restriction: || (>= net45) (>= netstandard1.3) + System.Reactive.Experimental (>= 4.1.6) - restriction: >= net45 + System.Reactive.Interfaces (>= 4.1.6) - restriction: || (>= net45) (>= netstandard1.3) + System.Reactive.Linq (>= 4.1.6) - restriction: || (>= net45) (>= netstandard1.3) + System.Reactive.PlatformServices (>= 4.1.6) - restriction: || (>= net45) (>= netstandard1.3) + System.Reactive.Providers (>= 4.1.6) - restriction: || (>= net45) (>= netstandard1.3) + System.Reactive.Runtime.Remoting (>= 4.1.6) - restriction: >= net45 + System.Reactive.Windows.Forms (>= 4.1.6) - restriction: >= net45 + System.Reactive.Windows.Threading (>= 4.1.6) - restriction: || (>= net45) (>= uap10.0) + System.Reactive.WindowsRuntime (>= 4.1.6) - restriction: >= uap10.0 + System.Reactive.Core (4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + System.Reactive (>= 4.1.6) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Reactive.Experimental (4.1.6) - restriction: || (&& (>= net45) (>= netstandard2.0)) (>= net462) + System.Reactive (>= 4.1.6) - restriction: >= net46 + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: >= net46 + System.Reactive.Interfaces (4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + System.Reactive (>= 4.1.6) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Reactive.Linq (4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + System.Reactive (>= 4.1.6) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Reactive.PlatformServices (4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + System.Reactive (>= 4.1.6) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Reactive.Providers (4.1.6) - restriction: || (>= net462) (>= netstandard2.0) + System.Reactive (>= 4.1.6) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: || (>= net46) (>= netstandard2.0) (>= uap10.0) + System.Reactive.Runtime.Remoting (4.1.6) - restriction: || (&& (>= net45) (>= netstandard2.0)) (>= net462) + System.Reactive (>= 4.1.6) - restriction: >= net46 + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: >= net46 + System.Reactive.Windows.Forms (4.1.6) - restriction: || (&& (>= net45) (>= netstandard2.0)) (>= net462) + System.Reactive (>= 4.1.6) - restriction: >= net46 + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: >= net46 + System.Reactive.Windows.Threading (4.1.6) - restriction: || (&& (>= net45) (>= netstandard2.0)) (>= net462) (&& (>= netstandard2.0) (>= uap10.0)) + System.Reactive (>= 4.1.6) - restriction: || (>= net46) (>= uap10.0) + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: || (>= net46) (>= uap10.0) + System.Reactive.WindowsRuntime (4.1.6) - restriction: || (&& (>= net462) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Reactive (>= 4.1.6) - restriction: >= uap10.0 + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: >= uap10.0 + System.Reflection (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net461) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Reflection.Emit (4.6) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net461) (>= netstandard2.0)) + System.Reflection.Emit.ILGeneration (>= 4.6) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< netstandard2.1) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= uap10.1) + System.Reflection.Emit.ILGeneration (4.6) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< netstandard2.1) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Reflection.Extensions (4.3) - restriction: || (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Reflection.Metadata (1.7) - restriction: || (&& (< net46) (>= net462)) (>= netstandard2.0) + System.Collections.Immutable (>= 1.6) - restriction: || (>= net45) (&& (< netcoreapp3.0) (>= netstandard2.0)) (&& (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) + System.Reflection.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Reflection.TypeExtensions (4.6) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net461) (>= netstandard2.0)) (&& (< net472) (>= netstandard2.0)) (>= netcoreapp2.1) + System.Resources.Extensions (4.6) - restriction: >= netstandard2.0 + System.Memory (>= 4.5.3) - restriction: && (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + System.Resources.ResourceManager (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.Writer (4.3) - restriction: && (< net472) (>= netstandard2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netcoreapp1.1) (< netstandard1.2)) (&& (>= net461) (>= netcoreapp1.1) (< netstandard1.3)) (&& (>= net461) (>= netcoreapp1.1) (< netstandard1.4)) (&& (>= net461) (>= netcoreapp1.1) (< netstandard1.5)) (&& (>= net461) (>= netcoreapp1.1) (< netstandard2.0)) (&& (>= net461) (>= netcoreapp1.1) (< portable-net45+win8+wpa81)) (&& (>= net461) (>= netcoreapp1.1) (>= uap10.0)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netcoreapp1.1) (< netstandard1.2) (>= netstandard2.0)) (&& (>= netcoreapp1.1) (< netstandard1.3) (>= netstandard2.0)) (&& (>= netcoreapp1.1) (< netstandard1.4) (>= netstandard2.0)) (&& (>= netcoreapp1.1) (< netstandard1.5) (>= netstandard2.0)) (&& (>= netcoreapp1.1) (< netstandard1.6) (>= netstandard2.0)) (&& (>= netcoreapp1.1) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.CompilerServices.Unsafe (4.6) - restriction: || (&& (< monoandroid) (< netstandard1.0) (>= netstandard2.0) (< win8)) (&& (>= monotouch) (>= netcoreapp2.1)) (&& (>= net45) (>= netstandard2.0)) (&& (>= net461) (>= netcoreapp2.1)) (>= net462) (&& (< netcoreapp2.0) (>= netcoreapp2.1)) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) (&& (>= netcoreapp2.1) (< netstandard1.1)) (&& (>= netcoreapp2.1) (< netstandard2.0)) (&& (>= netcoreapp2.1) (>= uap10.1)) (&& (>= netcoreapp2.1) (>= xamarinios)) (&& (>= netcoreapp2.1) (>= xamarinmac)) (&& (>= netcoreapp2.1) (>= xamarintvos)) (&& (>= netcoreapp2.1) (>= xamarinwatchos)) (&& (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.0) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= wp8)) + System.Runtime.Extensions (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.Handles (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= net462) (>= netcoreapp1.1) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime.InteropServices.RuntimeInformation (4.3) - restriction: || (&& (< net40) (>= net45) (< netstandard1.3) (>= netstandard2.0)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.0) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.0) (>= netstandard2.0) (< portable-net45+win8)) (&& (< net40) (< netstandard1.0) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (< netstandard1.0) (>= netstandard1.6) (>= win8)) (&& (>= net461) (< netstandard1.3) (>= netstandard1.6) (>= wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (< netstandard1.0) (>= netstandard2.0) (>= win8)) (&& (< netstandard1.3) (>= netstandard2.0) (< win8) (>= wpa81)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Runtime.InteropServices.WindowsRuntime (4.3) - restriction: && (< net46) (>= netstandard2.0) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Loader (4.3) - restriction: || (&& (< net461) (>= netstandard2.0)) (>= netcoreapp2.1) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net462) (>= netstandard1.5) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net462) (>= netstandard1.5) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net462) (>= netstandard1.5) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Numerics (4.3) - restriction: || (&& (< net40) (>= net461) (>= netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (>= net462) (>= netstandard2.0) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Serialization.Primitives (4.3) - restriction: && (< net472) (>= netstandard2.0) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Security.AccessControl (4.6) - restriction: >= netcoreapp2.1 + Microsoft.NETCore.Platforms (>= 3.0) - restriction: >= netcoreapp2.0 + System.Security.Principal.Windows (>= 4.6) - restriction: || (&& (>= net46) (< netstandard2.0)) (&& (< net46) (>= netstandard1.3) (< netstandard2.0) (< uap10.1)) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) + System.Security.Cryptography.Algorithms (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (< net461) (>= netstandard2.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.Apple (>= 4.3.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (>= net463) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (>= net463) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Numerics (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net463) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (&& (>= net46) (< netstandard1.4)) (&& (>= net461) (< netstandard1.6)) (>= net463) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Cng (4.6) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Security.Cryptography.Csp (4.3) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Algorithms (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Security.Cryptography.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Encoding (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (< net45) (>= net462) (< netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections.Concurrent (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.OpenSsl (4.6) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: && (>= netcoreapp2.0) (< netcoreapp2.1) + System.Security.Cryptography.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= net462) (>= netstandard1.6)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.ProtectedData (4.6) - restriction: && (< net472) (>= netstandard2.0) + System.Memory (>= 4.5.3) - restriction: && (< net46) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + System.Security.Cryptography.X509Certificates (4.3.2) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net46) (>= netstandard2.0)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (>= net462) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Net.Http (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization.Calendars (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Numerics (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Algorithms (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (&& (>= net46) (< netstandard1.4)) (>= net461) + System.Security.Cryptography.Cng (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Csp (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (&& (>= net46) (< netstandard1.4)) (>= net461) + System.Security.Cryptography.OpenSsl (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Principal.Windows (4.6) - restriction: >= netcoreapp2.1 + Microsoft.NETCore.Platforms (>= 3.0) - restriction: || (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) + System.Text.Encoding (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.Encoding.CodePages (4.6) - restriction: || (&& (< net472) (>= netstandard2.0)) (>= netcoreapp2.1) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: >= netcoreapp2.0 + System.Runtime.CompilerServices.Unsafe (>= 4.6) - restriction: || (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp3.0)) + System.Text.Encoding.Extensions (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Text.RegularExpressions (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (< netcoreapp1.1) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (< netcoreapp1.1) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (< netcoreapp1.1) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime.Extensions (>= 4.3.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (< netcoreapp1.1) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (< netcoreapp1.1) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Overlapped (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< net46) (>= netstandard1.3) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Runtime (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Runtime.Handles (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Threading.Tasks (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks.Dataflow (4.10) - restriction: >= netstandard2.0 + System.Threading.Tasks.Extensions (4.5.3) - restriction: || (>= net462) (>= netstandard2.0) + System.Runtime.CompilerServices.Unsafe (>= 4.5.2) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.0) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< netstandard1.0) (>= portable-net45+win8+wp8+wpa81) (< win8)) (>= net45) (&& (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.0) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= wp8) + System.Threading.Thread (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) (&& (< net472) (>= netstandard2.0)) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.ThreadPool (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Timer (4.3) - restriction: || (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.ValueTuple (4.5) - restriction: || (>= net461) (>= netstandard2.0) + System.Xml.ReaderWriter (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (< net462) (>= netstandard2.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.Encoding.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.RegularExpressions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XDocument (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net40) (>= net461) (< netstandard1.2) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.3) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.4) (>= netstandard1.6)) (&& (< net40) (>= net461) (< netstandard1.5) (>= netstandard1.6)) (&& (< net40) (>= net461) (>= netstandard1.6) (< netstandard2.0)) (&& (< net40) (>= net461) (>= netstandard1.6) (< portable-net45+win8+wpa81)) (&& (< net40) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< net40) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.4) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (< netstandard1.6) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< net40) (>= netstandard2.0) (< portable-net45+win8+wpa81)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netstandard1.6) (>= uap10.0)) (&& (< net462) (>= netstandard2.0)) (&& (>= netstandard2.0) (>= uap10.0)) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Tools (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Xml.XmlDocument (4.3) - restriction: || (&& (< monoandroid) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= net46) (>= netstandard2.0)) (>= net462) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XPath (4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XPath.XDocument (4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XDocument (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XPath (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Xml.XPath.XmlDocument (4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XmlDocument (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Xml.XPath (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + +GROUP Generator +NUGET + remote: https://www.nuget.org/api/v2 + Fake.Core.String (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (5.16.1) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Diagnostics.FileVersionInfo (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.IO.FileSystem.Watcher (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (4.7) + FSharp.Data (3.3.2) + FSharp.Core (>= 4.0.0.1) - restriction: >= net45 + FSharp.Core (>= 4.3.4) - restriction: && (< net45) (>= netstandard2.0) + Microsoft.NETCore.Platforms (3.0) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Targets (3.0) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.Win32.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (4.3.1) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1.1) + Microsoft.NETCore.Targets (>= 1.1.3) + System.Buffers (4.5) - restriction: || (&& (>= monoandroid) (>= net462) (< netstandard2.0)) (&& (< monoandroid) (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (>= monotouch) (>= net462)) (&& (>= monotouch) (>= netstandard2.0)) (&& (>= net45) (< netstandard1.1) (>= netstandard2.0)) (&& (< net45) (>= net461) (>= netstandard2.0)) (&& (< net45) (>= net462) (>= netstandard2.0)) (&& (< net45) (>= net462) (< netstandard2.0)) (&& (>= net46) (< netstandard1.1) (>= netstandard2.0)) (&& (< net46) (>= net462)) (&& (>= net461) (< netstandard1.1) (>= netstandard2.0)) (&& (>= net462) (< netstandard1.1)) (&& (>= net462) (< netstandard2.0) (>= wpa81)) (&& (>= net462) (>= uap10.1)) (&& (>= net462) (>= xamarinios)) (&& (>= net462) (>= xamarinmac)) (&& (>= net462) (>= xamarintvos)) (&& (>= net462) (>= xamarinwatchos)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (< netstandard1.1) (>= netstandard2.0) (< win8) (>= wpa81)) (&& (< netstandard1.1) (>= xamarinios)) (&& (< netstandard1.1) (>= xamarinmac)) (&& (>= netstandard2.0) (>= uap10.1)) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) (&& (>= uap10.1) (>= xamarinios)) (&& (>= uap10.1) (>= xamarinmac)) + System.Collections (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Collections.Immutable (1.6) - restriction: || (&& (< monoandroid) (< net46) (< netcoreapp3.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (>= net45) (< net46) (>= netstandard2.0)) (&& (< net46) (>= net462)) (&& (>= net462) (< netstandard1.1)) (&& (>= net462) (< netstandard2.0) (>= wpa81)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) + System.Memory (>= 4.5.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net46) (>= uap10.1) + System.Diagnostics.FileVersionInfo (4.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Metadata (>= 1.4.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.IO (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.IO.FileSystem (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Watcher (4.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Overlapped (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Thread (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Memory (4.5.3) - restriction: || (&& (< monoandroid) (< net45) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (< net45) (>= net462) (>= netstandard2.0)) (&& (< net45) (>= net462) (< netstandard2.0)) (&& (>= net46) (< netstandard1.1) (>= netstandard2.0)) (&& (< net46) (>= net462)) (&& (>= net462) (< netstandard1.1)) (&& (>= net462) (< netstandard2.0) (>= wpa81)) (&& (>= net462) (>= uap10.1)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Buffers (>= 4.4) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (>= monotouch) (&& (>= net45) (< netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (< uap10.1) (>= wpa81)) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Numerics.Vectors (>= 4.4) - restriction: || (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net461) + System.Runtime.CompilerServices.Unsafe (>= 4.5.2) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (>= monotouch) (&& (>= net45) (< netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= uap10.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Numerics.Vectors (4.5) - restriction: || (&& (< monoandroid) (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (< net45) (>= net461) (>= netstandard2.0)) (&& (< net45) (>= net462) (>= netstandard2.0)) (&& (< net45) (>= net462) (< netstandard2.0)) (&& (>= net46) (< netstandard1.1) (>= netstandard2.0)) (&& (< net46) (>= net462)) (&& (>= net461) (< netstandard1.1) (>= netstandard2.0)) (&& (>= net462) (< netstandard1.1)) (&& (>= net462) (< netstandard2.0) (>= wpa81)) (&& (>= net462) (>= uap10.1)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Reflection (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Reflection.Metadata (1.7) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + System.Collections.Immutable (>= 1.6) - restriction: || (>= net45) (&& (< netcoreapp3.0) (>= netstandard2.0)) (&& (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) + System.Reflection.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.CompilerServices.Unsafe (4.6) - restriction: || (&& (>= monoandroid) (>= net462) (< netstandard2.0)) (&& (< monoandroid) (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (>= monotouch) (>= net462)) (&& (>= monotouch) (>= netstandard2.0)) (&& (>= net45) (< netstandard1.1) (>= netstandard2.0)) (&& (< net45) (>= net461) (>= netstandard2.0)) (&& (< net45) (>= net462) (>= netstandard2.0)) (&& (< net45) (>= net462) (< netstandard2.0)) (&& (>= net46) (< netstandard1.1) (>= netstandard2.0)) (&& (< net46) (>= net462)) (&& (>= net461) (< netstandard1.1) (>= netstandard2.0)) (&& (>= net462) (>= netcoreapp2.0)) (&& (>= net462) (< netstandard1.1)) (&& (>= net462) (< netstandard2.0) (>= wpa81)) (&& (>= net462) (>= uap10.1)) (&& (>= net462) (>= xamarinios)) (&& (>= net462) (>= xamarinmac)) (&& (>= net462) (>= xamarintvos)) (&& (>= net462) (>= xamarinwatchos)) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.0) (< netstandard1.1)) (&& (>= netcoreapp2.0) (>= uap10.1)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (< netstandard1.1) (>= netstandard2.0) (< win8) (>= wpa81)) (&& (< netstandard1.1) (>= xamarinios)) (&& (< netstandard1.1) (>= xamarinmac)) (&& (>= netstandard2.0) (>= uap10.1)) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) (&& (>= uap10.1) (>= xamarinios)) (&& (>= uap10.1) (>= xamarinmac)) + System.Runtime.Extensions (4.3.1) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.Handles (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= net462) (>= netcoreapp1.1) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Text.Encoding (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Overlapped (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< net46) (>= netstandard1.3) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Runtime (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Runtime.Handles (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Threading.Tasks (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Thread (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) +GITHUB + remote: plotly/plotly.js + dist/plot-schema.json (bead43ff7d5cbcedfd2bf29c25cf01b1b4074df9) +GROUP Plotly +NUGET + remote: https://www.nuget.org/api/v2 + Fable.Browser.Blob (1.1) - restriction: >= netstandard2.0 + Fable.Core (>= 3.0) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.6.2) - restriction: >= netstandard2.0 + Fable.Browser.Dom (1.1) + Fable.Browser.Blob (>= 1.1) - restriction: >= netstandard2.0 + Fable.Browser.Event (>= 1.0) - restriction: >= netstandard2.0 + Fable.Browser.WebStorage (>= 1.0) - restriction: >= netstandard2.0 + Fable.Core (>= 3.0) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.6.2) - restriction: >= netstandard2.0 + Fable.Browser.Event (1.0) - restriction: >= netstandard2.0 + Fable.Core (>= 3.0) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.5.2) - restriction: >= netstandard2.0 + Fable.Browser.WebStorage (1.0) - restriction: >= netstandard2.0 + Fable.Browser.Event (>= 1.0) - restriction: >= netstandard2.0 + Fable.Core (>= 3.0) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.5.2) - restriction: >= netstandard2.0 + Fable.Core (3.1.1) + FSharp.Core (>= 4.5.2) - restriction: >= netstandard2.0 + Fable.React (5.3.3) - restriction: >= netstandard2.0 + Fable.Browser.Dom (>= 1.0) - restriction: >= netstandard2.0 + Fable.Core (>= 3.0) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7) - restriction: >= netstandard2.0 + Feliz (0.57.1) + Fable.Core (>= 3.1.1) - restriction: >= netstandard2.0 + Fable.React (>= 5.3.2) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7) - restriction: >= netstandard2.0 + FSharp.Core (4.7) + +GROUP Testing +NUGET + remote: https://www.nuget.org/api/v2 + BenchmarkDotNet (0.11.5) - restriction: || (>= net461) (>= netcoreapp2.0) + BenchmarkDotNet.Annotations (>= 0.11.5) - restriction: >= netstandard2.0 + CommandLineParser (>= 2.4.3) - restriction: >= netstandard2.0 + Microsoft.CodeAnalysis.CSharp (>= 2.10) - restriction: >= netstandard2.0 + Microsoft.DotNet.PlatformAbstractions (>= 2.1) - restriction: >= netstandard2.0 + Microsoft.Win32.Registry (>= 4.5) - restriction: >= netstandard2.0 + System.Collections.Immutable (>= 1.5) - restriction: >= netstandard2.0 + System.Diagnostics.FileVersionInfo (>= 4.3) - restriction: >= netstandard2.0 + System.Management (>= 4.5) - restriction: >= netstandard2.0 + System.Reflection.Emit (>= 4.3) - restriction: >= netstandard2.0 + System.Reflection.Emit.Lightweight (>= 4.3) - restriction: >= netstandard2.0 + System.Reflection.Metadata (>= 1.6) - restriction: >= netstandard2.0 + System.Runtime.InteropServices.RuntimeInformation (>= 4.3) - restriction: >= netstandard2.0 + System.Threading.Tasks.Extensions (>= 4.5.2) - restriction: >= netstandard2.0 + System.ValueTuple (>= 4.5) - restriction: >= netstandard2.0 + System.Xml.XmlSerializer (>= 4.3) - restriction: >= netstandard2.0 + System.Xml.XPath.XmlDocument (>= 4.3) - restriction: >= netstandard2.0 + BenchmarkDotNet.Annotations (0.11.5) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + CommandLineParser (2.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Expecto (8.11) + FSharp.Core (>= 4.3.4) - restriction: || (>= net461) (>= netstandard2.0) + Mono.Cecil (>= 0.10.3) - restriction: || (>= net461) (>= netstandard2.0) + Expecto.BenchmarkDotNet (8.11) + BenchmarkDotNet (>= 0.10.14) - restriction: || (>= net461) (>= netcoreapp2.0) + FSharp.Core (>= 4.3.4) - restriction: || (>= net461) (>= netcoreapp2.0) + Expecto.FsCheck (8.11) + Expecto (>= 8.11) - restriction: || (>= net461) (>= netstandard2.0) + FsCheck (>= 2.13) - restriction: || (>= net461) (>= netstandard2.0) + Expecto.TestResults (8.10.1) + Expecto (>= 8.10.1) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.3.4) - restriction: || (>= net461) (>= netstandard2.0) + Foq (1.8) + FSharp.Core (>= 3.0.2) - restriction: || (&& (>= net40) (< netstandard2.0)) (>= net45) + FSharp.Core (>= 4.2.3) - restriction: && (< net40) (>= netstandard2.0) + System.Reflection.Emit (>= 4.3) - restriction: && (< net40) (>= netstandard2.0) + System.ValueTuple (>= 4.3.1) - restriction: || (&& (>= net40) (< netstandard2.0)) (>= net45) + FsCheck (2.14) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.2.3) - restriction: || (>= net452) (>= netstandard1.6) + FSharp.Core (4.7) - redirects: force + FSharp.Data (3.1.1) + FSharp.Core (>= 4.0.0.1) - restriction: >= net45 + FSharp.Core (>= 4.3.4) - restriction: && (< net45) (>= netstandard2.0) + Microsoft.CodeAnalysis.Analyzers (2.9.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.CodeAnalysis.Common (3.3.1) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.CodeAnalysis.Analyzers (>= 2.9.4) - restriction: >= netstandard2.0 + System.Collections.Immutable (>= 1.5) - restriction: >= netstandard2.0 + System.Memory (>= 4.5.3) - restriction: >= netstandard2.0 + System.Reflection.Metadata (>= 1.6) - restriction: >= netstandard2.0 + System.Runtime.CompilerServices.Unsafe (>= 4.5.2) - restriction: >= netstandard2.0 + System.Text.Encoding.CodePages (>= 4.5.1) - restriction: >= netstandard2.0 + System.Threading.Tasks.Extensions (>= 4.5.3) - restriction: >= netstandard2.0 + Microsoft.CodeAnalysis.CSharp (3.3.1) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.CodeAnalysis.Common (3.3.1) - restriction: >= netstandard2.0 + Microsoft.DotNet.PlatformAbstractions (3.0) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Runtime.InteropServices.RuntimeInformation (>= 4.0) - restriction: || (>= net45) (&& (>= netstandard1.3) (< netstandard2.0)) + Microsoft.NETCore.Platforms (3.0) - restriction: || (&& (>= net461) (>= netcoreapp2.1)) (>= netcoreapp2.0) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) + Microsoft.NETCore.Targets (3.0) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.Win32.Registry (4.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Memory (>= 4.5.3) - restriction: || (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (>= uap10.1) + System.Security.AccessControl (>= 4.6) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Security.Principal.Windows (>= 4.6) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + Mono.Cecil (0.11) - restriction: || (>= net461) (>= netstandard2.0) + runtime.native.System (4.3.1) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1.1) + Microsoft.NETCore.Targets (>= 1.1.3) + System.Collections (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Collections.Immutable (1.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Memory (>= 4.5.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net46) (>= uap10.1) + System.Diagnostics.Debug (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Globalization (4.3) - restriction: || (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.IO (4.3) - restriction: || (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.IO.FileSystem (4.3) - restriction: || (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (4.3) - restriction: || (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Collections (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.6) (< win8) (< wp8) (< wpa81)) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.6) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Management (4.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: >= netcoreapp2.0 + Microsoft.Win32.Registry (>= 4.6) - restriction: >= netcoreapp2.0 + System.CodeDom (>= 4.6) - restriction: || (&& (< net45) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Memory (4.5.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Runtime.CompilerServices.Unsafe (>= 4.5.2) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (>= monotouch) (&& (>= net45) (< netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= uap10.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Reflection (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Reflection.Emit (4.6) - restriction: || (&& (< net40) (>= netstandard2.0)) (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Reflection.Emit.ILGeneration (>= 4.6) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< netstandard2.1) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= uap10.1) + System.Reflection.Emit.ILGeneration (4.6) - restriction: || (&& (< monoandroid) (< net40) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (< net40) (>= netstandard2.0) (< netstandard2.1) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Reflection.Emit.Lightweight (4.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Reflection.Extensions (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Metadata (1.7) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Collections.Immutable (>= 1.6) - restriction: || (>= net45) (&& (< netcoreapp3.0) (>= netstandard2.0)) (&& (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) + System.Reflection.Primitives (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.TypeExtensions (4.6) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Resources.ResourceManager (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (4.3.1) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.CompilerServices.Unsafe (4.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (&& (>= net461) (>= xamarinios)) (&& (>= net461) (>= xamarinmac)) (>= netcoreapp2.0) + System.Runtime.Extensions (4.3.1) - restriction: || (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.Handles (4.3) - restriction: || (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (4.3) - restriction: || (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= net462) (>= netcoreapp1.1) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime.InteropServices.RuntimeInformation (4.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.AccessControl (4.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (&& (>= net461) (>= xamarinios)) (&& (>= net461) (>= xamarinmac)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: >= netcoreapp2.0 + System.Security.Principal.Windows (>= 4.6) - restriction: || (&& (>= net46) (< netstandard2.0)) (&& (< net46) (>= netstandard1.3) (< netstandard2.0) (< uap10.1)) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) + System.Security.Principal.Windows (4.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (&& (>= net461) (>= xamarinios)) (&& (>= net461) (>= xamarinmac)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: || (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) + System.Text.Encoding (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.Encoding.Extensions (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.RegularExpressions (4.3.1) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Runtime (>= 4.3.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.6) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Threading (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks (4.3) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks.Extensions (4.5.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Runtime.CompilerServices.Unsafe (>= 4.5.2) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.0) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< netstandard1.0) (>= portable-net45+win8+wp8+wpa81) (< win8)) (>= net45) (&& (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.0) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= wp8) + System.ValueTuple (4.5) - restriction: || (&& (>= net40) (< netstandard2.0)) (>= net45) (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Xml.ReaderWriter (4.3.1) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.Encoding.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.RegularExpressions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XmlSerializer (4.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Linq (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Emit (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Emit.ILGeneration (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.TypeExtensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.RegularExpressions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Xml.XmlDocument (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + remote: https://api.nuget.org/v3/index.json + System.CodeDom (4.6) - restriction: || (&& (< net45) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Diagnostics.FileVersionInfo (4.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Metadata (>= 1.4.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding.CodePages (4.6) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: >= netcoreapp2.0 + System.Runtime.CompilerServices.Unsafe (>= 4.6) - restriction: || (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp3.0)) + System.Xml.XmlDocument (4.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XPath (4.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XPath.XmlDocument (4.3) - restriction: || (&& (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.ReaderWriter (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Xml.XmlDocument (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Xml.XPath (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + +GROUP Tooling +NUGET + remote: https://www.nuget.org/api/v2 + Chessie (0.6) - restriction: >= netcoreapp2.0 + FSharp.Core (>= 4.0.1.7-alpha) - restriction: >= netstandard1.6 + NETStandard.Library (>= 1.6) - restriction: >= netstandard1.6 + dotnet-fable (2.0.11) - clitool: true + Dotnet.ProjInfo (>= 0.20) - restriction: >= netcoreapp2.0 + FSharp.Compiler.Service (>= 25.0.1) - restriction: >= netcoreapp2.0 + FSharp.Core (>= 4.5.2) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.App (>= 2.0) - restriction: >= netcoreapp2.0 + Newtonsoft.Json (>= 11.0.2) - restriction: >= netcoreapp2.0 + dotnet-fake (5.16.1) - clitool: true + Fake.Core.CommandLineParsing (>= 5.16.1) - restriction: >= netcoreapp2.0 + Fake.Runtime (>= 5.16.1) - restriction: >= netcoreapp2.0 + FSharp.Core (>= 4.7) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.App (>= 2.0) - restriction: >= netcoreapp2.0 + Mono.Cecil (>= 0.11) - restriction: >= netcoreapp2.0 + Paket.Core (>= 5.216) - restriction: >= netcoreapp2.0 + Fake.Runtime (5.16.1) - restriction: >= netcoreapp2.0 + Fake.Core.Context (>= 5.16.1) - restriction: >= netstandard2.0 + FSharp.Compiler.Service (>= 31.0) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7) - restriction: >= netstandard2.0 + Microsoft.DotNet.PlatformAbstractions (>= 2.1) - restriction: >= netstandard2.0 + Mono.Cecil (>= 0.11) - restriction: >= netstandard2.0 + Paket.Core (>= 5.216) - restriction: >= netstandard2.0 + System.Runtime.Loader (>= 4.3) - restriction: >= netstandard2.0 + FSharp.Core (4.7) - redirects: force + Microsoft.DotNet.PlatformAbstractions (3.0) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.App (2.2.7) - restriction: >= netcoreapp2.0 + Microsoft.NETCore.DotNetHostPolicy (>= 2.2.7) - restriction: >= netcoreapp2.2 + Microsoft.NETCore.Platforms (>= 2.2.3) - restriction: >= netcoreapp2.2 + Microsoft.NETCore.Targets (>= 2.0) - restriction: >= netcoreapp2.2 + NETStandard.Library (>= 2.0.3) - restriction: >= netcoreapp2.2 + Microsoft.NETCore.DotNetAppHost (3.0) - restriction: >= netcoreapp2.2 + Microsoft.NETCore.DotNetHostPolicy (3.0) - restriction: >= netcoreapp2.2 + Microsoft.NETCore.DotNetHostResolver (>= 3.0) + Microsoft.NETCore.DotNetHostResolver (3.0) - restriction: >= netcoreapp2.2 + Microsoft.NETCore.DotNetAppHost (>= 3.0) + Microsoft.NETCore.Platforms (3.0) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= monotouch) (>= netcoreapp2.1)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net461) (>= netcoreapp2.1)) (>= netcoreapp2.0) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) (&& (>= netcoreapp2.1) (>= xamarintvos)) (&& (>= netcoreapp2.1) (>= xamarinwatchos)) + Microsoft.NETCore.Targets (3.0) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (>= netcoreapp2.2) + Microsoft.Win32.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Registry (4.6) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + System.Buffers (>= 4.5) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (>= monotouch) (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0)) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Memory (>= 4.5.3) - restriction: || (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (>= uap10.1) + System.Security.AccessControl (>= 4.6) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Security.Principal.Windows (>= 4.6) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (>= monotouch) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + Mono.Cecil (0.11) - restriction: >= netcoreapp2.0 + NETStandard.Library (2.0.3) - restriction: || (&& (< net40) (>= net461) (>= netstandard1.6)) (&& (< net40) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (>= net45) (< netstandard1.3)) (&& (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.3) (< netstandard1.4) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.4) (< netstandard1.5) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.5) (< netstandard1.6) (< win8) (< wpa81)) (&& (< net45) (>= netstandard1.6) (< netstandard2.0) (< win8) (< wpa81)) (&& (< net45) (>= netstandard2.0)) (&& (>= net46) (< netstandard1.4)) (>= net461) (>= netcoreapp2.0) (&& (>= netstandard1.0) (< portable-net45+win8+wpa81)) (&& (< netstandard1.0) (>= portable-net45+win8) (< win8)) (&& (< netstandard1.0) (< portable-net45+win8) (>= portable-net45+win8+wpa81)) (&& (< netstandard1.0) (>= portable-net45+win8+wp8+wpa81) (< portable-net45+win8+wpa81)) (&& (< netstandard1.0) (>= win8)) (&& (< netstandard1.3) (< win8) (>= wpa81)) (&& (< netstandard1.5) (>= uap10.0)) (>= uap10.1) (>= wp8) + Paket.Core (5.223) - restriction: >= netcoreapp2.0 + Chessie (>= 0.6) - restriction: || (>= net45) (>= netstandard2.0) + Mono.Cecil (>= 0.10.0-beta6) - restriction: || (>= net45) (>= netstandard2.0) + Newtonsoft.Json (>= 10.0.3) - restriction: && (< net45) (>= netstandard2.0) + System.Net.Http.WinHttpHandler (>= 4.5) - restriction: && (< net45) (>= netstandard2.0) + System.Security.Cryptography.ProtectedData (>= 4.4) - restriction: && (< net45) (>= netstandard2.0) + runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.debian.9-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.fedora.27-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.fedora.28-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.native.System (4.3.1) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1.1) + Microsoft.NETCore.Targets (>= 1.1.3) + runtime.native.System.Security.Cryptography.Apple (4.3.1) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple (>= 4.3.1) + runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.debian.9-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.27-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.fedora.28-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.42.3-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.ubuntu.18.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3) + runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.opensuse.42.3-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple (4.3.1) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + runtime.ubuntu.18.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + System.Buffers (4.5) - restriction: || (&& (< monoandroid) (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (>= monotouch) (>= netstandard2.0)) (&& (< net45) (>= net46) (>= netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= net46) (< netstandard1.1) (>= netstandard2.0)) (&& (>= net46) (>= xamarinios)) (&& (>= net46) (>= xamarinmac)) (>= net461) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= uap10.1)) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) (&& (>= uap10.1) (>= xamarinios)) (&& (>= uap10.1) (>= xamarinmac)) + System.Collections (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net463) (>= netstandard2.0)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Collections.Concurrent (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net463) (>= netstandard2.0)) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Tracing (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Collections.Immutable (1.6) - restriction: || (>= net461) (>= netstandard2.0) + System.Memory (>= 4.5.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net46) (>= uap10.1) + System.Diagnostics.Debug (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net463) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Diagnostics.Process (4.3) - restriction: && (< net461) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Registry (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) + System.Text.Encoding.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Thread (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.ThreadPool (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.4) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.TraceSource (4.3) - restriction: && (< net461) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Diagnostics.Tracing (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net463) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Globalization (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.IO (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.IO.FileSystem (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net46) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net463) (>= netstandard2.0)) + System.Collections (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.6) (< win8) (< wp8) (< wpa81)) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.6) (< win8) (< wp8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Memory (4.5.3) - restriction: || (&& (< monoandroid) (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= net46) (>= netstandard2.0)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.0) (>= uap10.1)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Buffers (>= 4.4) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (>= monotouch) (&& (>= net45) (< netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (< uap10.1) (>= wpa81)) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Numerics.Vectors (>= 4.4) - restriction: || (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net461) + System.Runtime.CompilerServices.Unsafe (>= 4.5.2) - restriction: || (&& (>= monoandroid) (< netstandard2.0)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (>= monotouch) (&& (>= net45) (< netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= uap10.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Net.Http.WinHttpHandler (4.6) - restriction: >= netcoreapp2.0 + System.Memory (>= 4.5.3) - restriction: || (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (>= uap10.1) + System.Numerics.Vectors (4.5) - restriction: || (&& (< net45) (>= net46) (>= netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (>= net461) (&& (>= netstandard2.0) (>= uap10.1)) + System.Reflection (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Reflection.Emit (4.6) - restriction: && (< net461) (>= netstandard2.0) + System.Reflection.Emit.ILGeneration (>= 4.6) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< netstandard2.1) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) (>= uap10.1) + System.Reflection.Emit.ILGeneration (4.6) - restriction: || (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< netstandard2.1) (< xamarinios) (< xamarinmac)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Reflection.Metadata (1.7) - restriction: || (&& (< net46) (>= net462)) (>= net461) (>= netstandard2.0) + System.Collections.Immutable (>= 1.6) - restriction: || (>= net45) (&& (< netcoreapp3.0) (>= netstandard2.0)) (&& (>= netstandard1.1) (< netstandard2.0) (< win8) (< wpa81)) (&& (< netstandard1.1) (>= portable-net45+win8+wpa81) (< win8)) (&& (< netstandard1.1) (>= win8)) (&& (< netstandard2.0) (>= wpa81)) + System.Reflection.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.2) (>= netstandard2.0) (< win8)) (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.TypeExtensions (4.6) - restriction: && (< net461) (>= netstandard2.0) + System.Resources.ResourceManager (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.0) (< win8) (< wp8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (>= netcoreapp2.0) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.2) (< win8) (< wp8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.CompilerServices.Unsafe (4.6) - restriction: || (&& (< monoandroid) (< netstandard1.1) (>= netstandard2.0) (< win8)) (&& (>= monotouch) (>= netstandard2.0)) (&& (< net45) (>= net46) (>= netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= net46) (>= netcoreapp2.0)) (&& (>= net46) (< netstandard1.1) (>= netstandard2.0)) (&& (>= net46) (>= xamarinios)) (&& (>= net46) (>= xamarinmac)) (>= net461) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.0) (>= uap10.1)) (&& (< netstandard1.1) (>= netstandard2.0) (>= win8)) (&& (>= netstandard2.0) (>= uap10.1)) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) (&& (>= uap10.1) (>= xamarinios)) (&& (>= uap10.1) (>= xamarinmac)) + System.Runtime.Extensions (4.3.1) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime (>= 4.3.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) + System.Runtime.Handles (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) (&& (>= net462) (>= netcoreapp1.1)) (&& (>= netcoreapp1.1) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.NETCore.Targets (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Reflection.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.2) (< win8)) (&& (< monoandroid) (< net45) (>= netstandard1.2) (< netstandard1.3) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= net462) (>= netcoreapp1.1) + System.Runtime.Handles (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.5) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.3) (< netstandard1.5) (< win8) (< wpa81)) (>= netcoreapp1.1) + System.Runtime.Loader (4.3) - restriction: || (&& (< net461) (>= netstandard2.0)) (>= netcoreapp2.0) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net462) (>= netstandard1.5) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net462) (>= netstandard1.5) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net462) (>= netstandard1.5) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Numerics (4.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.1) (< netstandard1.3) (< win8) (< wpa81)) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.AccessControl (4.6) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= monotouch) (>= netstandard2.0)) (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: >= netcoreapp2.0 + System.Security.Principal.Windows (>= 4.6) - restriction: || (&& (>= net46) (< netstandard2.0)) (&& (< net46) (>= netstandard1.3) (< netstandard2.0) (< uap10.1)) (&& (< net46) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.0) + System.Security.Cryptography.Algorithms (4.3.1) - restriction: && (< net461) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.Apple (>= 4.3.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (>= net463) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (>= net463) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Numerics (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= net463) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net46) (>= netstandard1.3) (< netstandard1.4)) (&& (< monoandroid) (< net46) (>= netstandard1.4) (< netstandard1.6)) (&& (>= net46) (< netstandard1.4)) (&& (>= net461) (< netstandard1.6)) (>= net463) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.6) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Encoding (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net461) (>= net463) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections.Concurrent (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Linq (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Primitives (4.3) - restriction: || (&& (< monoandroid) (< net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< monoandroid) (< net46) (< netstandard1.6) (>= netstandard2.0)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= net46) (< netstandard1.4) (>= netstandard2.0)) (&& (< net461) (>= net463) (>= netstandard2.0)) + System.Diagnostics.Debug (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Principal.Windows (4.6) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (>= monotouch) (>= netstandard2.0)) (&& (< net46) (>= net461) (>= netstandard2.0)) (>= netcoreapp2.0) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) + Microsoft.NETCore.Platforms (>= 3.0) - restriction: || (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) + System.Text.Encoding (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.Encoding.Extensions (4.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Text.Encoding (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading (4.3) - restriction: || (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net463) (>= netstandard2.0)) (&& (< net46) (>= net462)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Tasks (4.3) - restriction: || (&& (< monoandroid) (< net45) (< netstandard1.3) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (< netstandard1.5) (>= netstandard2.0) (< win8) (< wpa81)) (&& (< monoandroid) (< net45) (>= netstandard2.0) (< win8) (< wpa81) (< xamarinios) (< xamarinmac)) (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net45) (>= net462)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + Microsoft.NETCore.Targets (>= 1.1) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Runtime (>= 4.3) - restriction: || (&& (< monoandroid) (< monotouch) (< net45) (>= netstandard1.3) (< win8) (< wpa81) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< monoandroid) (< net45) (>= netstandard1.0) (< netstandard1.3) (< win8) (< wp8) (< wpa81)) + System.Threading.Thread (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.ThreadPool (4.3) - restriction: && (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.ValueTuple (4.5) - restriction: || (>= net461) (>= netstandard2.0) + remote: https://api.nuget.org/v3/index.json + Dotnet.ProjInfo (0.36) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.6.2) - restriction: || (>= net461) (>= netstandard2.0) + System.ValueTuple (>= 4.4) - restriction: || (>= net461) (>= netstandard2.0) + Fake.Core.CommandLineParsing (5.16.1) - restriction: >= netcoreapp2.0 + FParsec (>= 1.0.3) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.Context (5.16.1) - restriction: >= netcoreapp2.0 + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.Core.String (5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + Fake.IO.FileSystem (5.16.1) + Fake.Core.String (>= 5.16.1) - restriction: || (>= net462) (>= netstandard2.0) + FSharp.Core (>= 4.7) - restriction: || (>= net462) (>= netstandard2.0) + System.Diagnostics.FileVersionInfo (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + System.IO.FileSystem.Watcher (>= 4.3) - restriction: || (>= net462) (>= netstandard2.0) + FParsec (1.0.3) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.0.0.1) - restriction: >= net40 + FSharp.Core (>= 4.2.3) - restriction: && (< net40) (>= netstandard1.6) + NETStandard.Library (>= 1.6.1) - restriction: && (< net40) (>= netstandard1.6) + FSharp.Compiler.Service (32.0) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.6.2) - restriction: || (>= net461) (>= netstandard2.0) + System.Collections.Immutable (>= 1.5) - restriction: || (>= net461) (>= netstandard2.0) + System.Diagnostics.Process (>= 4.1) - restriction: && (< net461) (>= netstandard2.0) + System.Diagnostics.TraceSource (>= 4.0) - restriction: && (< net461) (>= netstandard2.0) + System.Reflection.Emit (>= 4.3) - restriction: && (< net461) (>= netstandard2.0) + System.Reflection.Metadata (>= 1.6) - restriction: || (>= net461) (>= netstandard2.0) + System.Reflection.TypeExtensions (>= 4.3) - restriction: && (< net461) (>= netstandard2.0) + System.Runtime.Loader (>= 4.0) - restriction: && (< net461) (>= netstandard2.0) + System.Security.Cryptography.Algorithms (>= 4.3) - restriction: && (< net461) (>= netstandard2.0) + System.ValueTuple (>= 4.4) - restriction: >= net461 + FSharpLint.Core (0.12.5) + Dotnet.ProjInfo (>= 0.31) - restriction: || (>= net461) (>= netstandard2.0) + FParsec (>= 1.0.3) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Compiler.Service (>= 32.0) - restriction: || (>= net461) (>= netstandard2.0) + FSharp.Core (>= 4.6.2) - restriction: || (>= net461) (>= netstandard2.0) + Newtonsoft.Json (>= 12.0.2) - restriction: || (>= net461) (>= netstandard2.0) + Newtonsoft.Json (12.0.2) - restriction: || (>= net461) (>= netstandard2.0) + System.Diagnostics.FileVersionInfo (4.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Globalization (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Reflection.Metadata (>= 1.4.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Watcher (4.3) - restriction: || (>= net462) (>= netstandard2.0) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + Microsoft.Win32.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + runtime.native.System (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Collections (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.IO.FileSystem.Primitives (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Extensions (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.Handles (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Runtime.InteropServices (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Text.Encoding (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Overlapped (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Tasks (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Threading.Thread (>= 4.3) - restriction: && (< monoandroid) (< monotouch) (< net46) (>= netstandard1.3) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.ProtectedData (4.6) - restriction: >= netcoreapp2.0 + System.Memory (>= 4.5.3) - restriction: && (< net46) (< netcoreapp2.1) (>= netstandard2.0) (< xamarinios) (< xamarinmac) + System.Threading.Overlapped (4.3) - restriction: || (&& (< monoandroid) (< net46) (>= netstandard2.0) (< xamarinios) (< xamarinmac)) (&& (< net46) (>= net462)) + Microsoft.NETCore.Platforms (>= 1.1) - restriction: && (< net46) (>= netstandard1.3) + System.Resources.ResourceManager (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Runtime (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) + System.Runtime.Handles (>= 4.3) - restriction: && (< net46) (>= netstandard1.3) diff --git a/paket.references b/paket.references new file mode 100644 index 0000000..23d7518 --- /dev/null +++ b/paket.references @@ -0,0 +1,3 @@ +group Tooling + dotnet-fake + dotnet-fable \ No newline at end of file diff --git a/src/Feliz.Generator.Plotly/ApiParser.fs b/src/Feliz.Generator.Plotly/ApiParser.fs new file mode 100644 index 0000000..8ee8a85 --- /dev/null +++ b/src/Feliz.Generator.Plotly/ApiParser.fs @@ -0,0 +1,330 @@ +namespace Fable.Plotly.Generator + +open System.IO +open FSharp.Data +open FSharp.Data.JsonExtensions +open Domain + +module ParserUtils = + open Fake.IO + open Fake.IO.FileSystemOperators + + let schema = + File.readAsString (__SOURCE_DIRECTORY__ @@ "../../paket-files/generator/plotly/plotly.js/dist/plot-schema.json") + |> JsonValue.Parse + + let isObj (jVal: JsonValue) = + jVal + |> JsonValue.tryGetProp "role" + |> Option.map (JsonValue.asString >> ((=) "object")) + |> function + | Some b -> b + | None -> false + + let getObjDoc (jVal: JsonValue) = + jVal.TryGetProperty("meta") + |> Option.bind (JsonValue.tryGetProp "description") + |> Option.map JsonValue.asString + |> Option.toList + + let getPropDoc (jVal: JsonValue) = + jVal.TryGetProperty("description") + |> Option.map JsonValue.asString + |> Option.toList + + let getDocs (jVal: JsonValue) = + if isObj jVal then getObjDoc jVal + else getPropDoc jVal + |> List.map (fun s -> s.Trim().Trim('"')) + |> List.filter (fun s -> s <> "") + + [] + type ValType = + | Any + | Bool + | DataArray + | Enumerated + | EnumeratedWithCustom + | InfoArray of ValType + | Int + | List of ValType + | Number + | NumList of ValType + | String + | Component + + [] + type PropType = + | Val of ValType + | Component of PropType list + + module ValType = + [] + module private Impl = + let boolStr = "(value: bool)", "value" + let boolSeqStr = "(values: seq)", "values" + let stringStr = "(value: string)", "value" + let stringSeqStr = "(values: seq)", "values" + let intStr = "(value: int)", "value" + let intSeqStr = "(values: seq)", "values" + let floatStr = "(value: float)", "value" + let floatSeqStr = "(values: seq)", "values" + + let getPrimativeOverloadSeq = + function + | ValType.Bool -> [ boolSeqStr ] + | ValType.Int -> [ intSeqStr ] + | ValType.Number -> [ intSeqStr; floatSeqStr ] + | ValType.String -> [ stringSeqStr ] + | ValType.Enumerated -> [] + | ValType.Any -> [ boolSeqStr; intSeqStr; floatSeqStr; stringSeqStr ] + | s -> + printfn "%s" (s.ToString()) + [ "(value: TODO)", "value" ] + + let rec getType propName (jVal: JsonValue) = + let hasValType = jVal.TryGetProperty("valType").IsSome + + let isEnumeratedWithCustom() = + let jValHasRegex = + jVal?values.AsArray() + |> Array.filter (fun s -> s.AsString() |> String.containsRegex) + |> Array.length > 1 + + jVal?valType.AsString() = "enumerated" && jValHasRegex + + match propName, hasValType with + | "scaleanchor", true -> ValType.String + | "overlaying", true when isEnumeratedWithCustom() -> ValType.EnumeratedWithCustom + | "anchor", true when isEnumeratedWithCustom() -> ValType.EnumeratedWithCustom + | "matches", true when jVal?valType.AsString() = "enumerated" -> ValType.String + | _, true -> + match jVal?valType + |> JsonValue.asString + |> fun s -> s.Trim('"') with + | "angle" -> ValType.Number + | "any" -> ValType.Any + | "boolean" -> ValType.Bool + | "color" -> ValType.String + | "colorlist" -> ValType.List ValType.String + | "colorscale" -> ValType.List ValType.String + | "data_array" -> ValType.DataArray + | "enumerated" -> ValType.Enumerated + | "flaglist" -> ValType.List ValType.String + | "info_array" -> + if jVal?items.AsArray().Length < 1 then jVal?items + else jVal?items.AsArray().[0] + |> getType propName + |> ValType.InfoArray + | "integer" -> ValType.Int + | "number" -> ValType.Number + | "string" -> ValType.String + | "subplotid" -> ValType.List ValType.String + | _ -> ValType.Any + | _ -> ValType.Component + + let getOverloadStrings = + function + | ValType.Any -> [ boolStr; boolSeqStr; stringStr; stringSeqStr; intStr; intSeqStr; floatStr; floatSeqStr ] + | ValType.Bool -> [ boolStr ] + | ValType.DataArray -> [ boolSeqStr; stringSeqStr; intSeqStr; floatSeqStr ] + | ValType.Enumerated -> [] + | ValType.EnumeratedWithCustom -> [ stringStr ] + | ValType.InfoArray vt -> + match vt with + | ValType.List vtPrim -> vtPrim + | _ -> vt + |> getPrimativeOverloadSeq + | ValType.Int -> [ intStr ] + | ValType.List vt -> getPrimativeOverloadSeq vt + | ValType.Number -> [ intStr; floatStr ] + | ValType.NumList vt -> getPrimativeOverloadSeq vt + | ValType.String -> [ stringStr ] + | ValType.Component -> [] + +module rec ApiParser = + open ParserUtils + + let parseProp propName (jVal: JsonValue): Prop = + let propMethodName = + propName + |> trimJson + |> spaceCaseTokebabCase + |> kebabCaseToCamelCase + |> replaceAddSymbol + |> appendApostropheToReservedKeywords + + let propType = ValType.getType propName jVal + + let propOverloads = ValType.getOverloadStrings propType |> List.map (fun s -> s ||> RegularPropOverload.create) + + let enumOverloads = + if propType = ValType.Enumerated then + jVal?values.AsArray() + |> Array.map JsonValue.asString + |> List.ofArray + elif propType = ValType.EnumeratedWithCustom then + jVal?values.AsArray() + |> Array.choose (fun j -> + match j |> JsonValue.asString with + | s when String.containsRegex s -> None + | s -> Some s) + |> List.ofArray + else + [] + |> List.map (fun v -> + let methodName = + v + |> emptStringToNone + |> trimJson + |> fixMethodNameOperators propMethodName + |> dashStringToDash + |> spaceCaseTokebabCase + |> kebabCaseToCamelCase + |> replaceAddSymbol + |> prefixUnderscoreOrNegativeToNumbers + |> appendApostropheToReservedKeywords + EnumPropOverload.create methodName v) + + let nestedComponents = + match propName, propType with + | "transforms", ValType.Component -> [ parseComponent propName schema?transforms ] + | "type", ValType.Component -> [] + | "role", ValType.Component -> [] + | _, ValType.Component -> [ parseComponent propName jVal ] + | _ -> [] + + let addRegularOverloads prop = (prop, propOverloads) ||> Seq.fold (flip Prop.addRegularOverload) + + let addEnumOverloads prop = (prop, enumOverloads) ||> Seq.fold (flip Prop.addEnumOverload) + + let addComponents prop = (prop, nestedComponents) ||> Seq.fold (flip Prop.addComponent) + + Prop.create propName propMethodName + |> Prop.setDocs (getDocs jVal) + |> addRegularOverloads + |> addEnumOverloads + |> addComponents + + let parseComponent componentName (jVal: JsonValue) = + let skipComp = [ "_deprecated"; "items"; "_isSubplotObj" ] + + let chunkAttributes (props: (string * JsonValue) []) = + props + |> Array.collect + (Array.singleton + >> (fun prop -> + match prop |> Array.head with + | attribs when (attribs |> fst) = "attributes" || (attribs |> fst) = "layoutAttributes" -> + attribs + |> snd + |> fun j -> j.Properties + | _ -> prop) + >> (Array.filter (fun p -> Array.contains (fst p) (skipComp |> Array.ofList) |> not))) + + let props = + jVal.Properties + |> Array.filter (fun (name, _) -> List.contains name skipComp |> not) + |> chunkAttributes + |> Array.map (fun p -> p ||> parseProp) + + let addProps comp = (comp, props) ||> Array.fold (flip Component.addProp) + + Component.create componentName + |> Component.setDocs (getDocs jVal) + |> addProps + + let parseApi() = + let components = + [ schema?config |> parseComponent "config" + schema?layout |> parseComponent "layout" + schema?traces |> parseComponent "data" ] + + let addAllComponents api = (api, components) ||> List.fold (flip ComponentApi.addComponent) + + let bindings = + [ "Create a Plotly plot component.", + "static member inline plot (props: #IPlotProperty list) : ReactElement = Bindings.Internal.createPlot (createObj !!props)" ] + + let typePostlude = + [ "When provided, causes the plot to update when the revision is incremented.", + "static member inline revision (value: int) = Interop.mkPlotAttr \"revision\" value" + "When provided, causes the plot to update when the revision is incremented.", + "static member inline revision (value: float) = Interop.mkPlotAttr \"revision\" value" + "Callback executed after plot is initialized.", + "static member inline onInitialized (handler: obj -> HTMLElement -> unit) = Interop.mkPlotAttr \"onInitialized\" handler" + "Callback executed when when a plot is updated due to new data or layout, or when user interacts with a plot.", + "static member inline onUpdate (handler: obj -> HTMLElement -> unit) = Interop.mkPlotAttr \"onUpdate\" handler" + "Callback executed when component unmounts, before Plotly.purge strips the graphDiv of all private attributes.", + "static member inline onPurge (handler: obj -> HTMLElement -> unit) = Interop.mkPlotAttr \"onPurge\" handler" + "Callback executed when a plotly.js API method rejects", + "static member inline onError (handler: ErrorEvent -> unit) = Interop.mkPlotAttr \"onError\" handler" + "Id assigned to the

into which the plot is rendered.", + "static member inline divId (value: string) = Interop.mkPlotAttr \"divId\" value" + "Class applied to the
into which the plot is rendered", + "static member inline className (value: string) = Interop.mkPlotAttr \"className\" value" + "Styles the
into which the plot is rendered", + "static member inline style (properties: #IStyleAttribute list) = Interop.mkAttr \"style\" (createObj !!properties)" + "Styles the
into which the plot is rendered", + "static member style (properties: (bool * IStyleAttribute list) list) = Interop.mkAttr \"style\" (properties |> Bindings.Internal.withConditionals)" + "Assign the graph div to window.gd for debugging", + "static member inline debug (value: bool) = Interop.mkPlotAttr \"debug\" value" + "When true, adds a call to Plotly.Plot.resize() as a window.resize event handler", + "static member inline useResizeHandler (value: bool) = Interop.mkPlotAttr \"useResizeHandler\" value" + "", + "static member inline onAfterExport (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onClick\" handler" + "", + "static member inline onAfterPlot (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onAfterPlot\" handler" + "", + "static member inline onAnimated (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onAnimated\" handler" + "", + "static member inline onAnimatingFrame (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onAnimatingFrame\" handler" + "", + "static member inline onAnimationInterrupted (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onAnimationInterrupted\" handler" + "", + "static member inline onAutoSize (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onAutoSize\" handler" + "", + "static member inline onBeforeExport (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onBeforeExport\" handler" + "", + "static member inline onButtonClicked (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onButtonClicked\" handler" + "", "static member inline onClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onClick\" handler" + "", + "static member inline onClickAnnotation (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onClickAnnotation\" handler" + "", + "static member inline onDeselect (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onDeselect\" handler" + "", + "static member inline onDoubleClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onDoubleClick\" handler" + "", + "static member inline onFramework (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onFramework\" handler" + "", "static member inline onHover (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onHover\" handler" + "", + "static member inline onLegendClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onLegendClick\" handler" + "", + "static member inline onLegendDoubleClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onLegendDoubleClick\" handler" + "", + "static member inline onRelayout (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onRelayout\" handler" + "", + "static member inline onRestyle (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onRestyle\" handler" + "", + "static member inline onRedraw (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onRedraw\" handler" + "", + "static member inline onSelected (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onSelected\" handler" + "", + "static member inline onSelecting (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onSelecting\" handler" + "", + "static member inline onSliderChange (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onSliderChange\" handler" + "", + "static member inline onSliderEnd (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onSliderEnd\" handler" + "", + "static member inline onSliderStart (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onSliderStart\" handler" + "", + "static member inline onTransitioning (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onTransitioning\" handler" + "", + "static member inline onTransitionInterrupted (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onTransitionInterrupted\" handler" + "", + "static member inline onUnhover (handler: MouseEvent -> unit) = Interop.mkPlotAttr \"onUnhover\" handler" ] + + let api = ComponentApi.create "Feliz.Plotly" "Plot" "Plotly" bindings typePostlude |> addAllComponents + + { GeneratorComponentApi = api + PlotlyComponents = components } diff --git a/src/Feliz.Generator.Plotly/AssemblyInfo.fs b/src/Feliz.Generator.Plotly/AssemblyInfo.fs new file mode 100644 index 0000000..6b66bff --- /dev/null +++ b/src/Feliz.Generator.Plotly/AssemblyInfo.fs @@ -0,0 +1,22 @@ +// Auto-Generated by FAKE; do not edit +namespace System +open System.Reflection +open System.Runtime.CompilerServices + +[] +[] +[] +[] +[] +[] +[] +do () + +module internal AssemblyVersionInformation = + let [] AssemblyTitle = "Feliz.Generator.Plotly" + let [] AssemblyProduct = "Feliz.Plotly" + let [] AssemblyDescription = "Fable bindings written in the Feliz-style for plotly.js" + let [] AssemblyVersion = "0.0.1" + let [] AssemblyFileVersion = "0.0.1" + let [] AssemblyConfiguration = "Release" + let [] InternalsVisibleTo = "Feliz.Generator.Plotly.Tests" diff --git a/src/Feliz.Generator.Plotly/Common.fs b/src/Feliz.Generator.Plotly/Common.fs new file mode 100644 index 0000000..8b3e43e --- /dev/null +++ b/src/Feliz.Generator.Plotly/Common.fs @@ -0,0 +1,115 @@ +namespace Fable.Plotly.Generator + + + + + + + + + +[] +module Common = + let trimJson (s: string) = s.Trim().Trim('"') + + let spaceCaseTokebabCase (s: string) = s.Replace(' ', '-') + + let dashStringToDash (s: string) = + if s = "-" then "dash" + else s + + let emptStringToNone (s: string) = + if s = "\"\"" then "none" + else s + + let kebabCaseToCamelCase (s: string) = + let pieces = + s.Split('-') + |> Seq.trimEmptyLines + |> Array.ofSeq + if pieces.Length > 1 then + pieces + |> Array.iteri (fun i piece -> + if i > 0 then pieces.[i] <- piece.Substring(0, 1).ToUpper() + piece.Substring(1)) + pieces |> String.concat "" + else + s + + let prefixUnderscoreOrNegativeToNumbers (s: string) = + let isNegative (s: string) = (s |> Seq.head) = '-' && (s.Substring(1) |> Seq.forall System.Char.IsNumber) + match s.Length > 0, + s + |> Seq.head + |> System.Char.IsNumber, isNegative s with + | true, true, _ -> "_" + s + | true, false, true -> "neg" + (s.Substring(1)) + | _ -> s + + let appendApostropheToReservedKeywords (s: string) = + let reserved = + [ "checked" + "static" + "fixed" + "inline" + "default" + "component" + "inherit" + "open" + "type" + "true" + "false" + "in" + "end" + "match" + "base" + "include" + "constraint" ] |> Set.ofList + if reserved.Contains s then s + "'" + else s + + let private transformOperations (s: string) = + match s with + | "=" -> "eq" + | "!=" -> "notEq" + | "<" -> "lt" + | ">=" -> "gtEq" + | ">" -> "gt" + | "<=" -> "ltEq" + | "[]" -> "inclusiveRange" + | "()" -> "exclusiveRange" + | "[)" -> "leftIncLRightExcRange" + | "(]" -> "rightIncLeftExcRange" + | "][" -> "inclusiveBounds" + | ")(" -> "exclusiveBounds" + | "](" -> "rightExcLeftIncBounds" + | ")[" -> "leftExcRightIncBounds" + | "{}" -> "keepPresent" + | "}{" -> "filterPresent" + | _ -> s + + let private transformShape (s: string) = + match s with + | ">" -> "pointedRight" + | "<" -> "pointedLeft" + | "|" -> "straight" + | "/" -> "rightSlant" + | @"\\" -> "leftSlant" + | _ -> s + + let fixMethodNameOperators methodName (s: string) = + match methodName with + | "edgeshape" -> transformShape s + | "operation" -> transformOperations s + | _ -> s + + let replaceAddSymbol (s: string) = + let trimOuter = s.Trim('+') + if trimOuter.Contains "+" then + let head, tail = trimOuter.Split('+') |> Array.splitAt 1 + [ head |> Array.map String.lowerFirst + [| "And" |] + tail |> Array.map String.upperFirst ] + |> Array.concat + |> Array.reduce (sprintf "%s%s") + else + trimOuter diff --git a/src/Feliz.Generator.Plotly/Domain.fs b/src/Feliz.Generator.Plotly/Domain.fs new file mode 100644 index 0000000..70d6edc --- /dev/null +++ b/src/Feliz.Generator.Plotly/Domain.fs @@ -0,0 +1,226 @@ +namespace Fable.Plotly.Generator + +module rec Domain = + type RegularPropOverloadBody = + | ValueExprOnly of string + | CustomBody of string + + type RegularPropOverload = + { /// The code for the method parameters, e.g. `(value: string)`. + ParamsCode: string + /// The code for the prop value expression, e.g. `value` or + /// `(System.Func<_,_,_> handler)`. + BodyCode: RegularPropOverloadBody + /// Whether the member is inline. + IsInline: bool + /// Whether the member should be implemented as an extension member. + IsExtension: bool } + + module RegularPropOverload = + /// Creates an inline prop overload with the specified code for params and + /// value expression, implemented as a regular (non-extension) member. + let create paramsCode valueCode = + { ParamsCode = paramsCode + BodyCode = ValueExprOnly valueCode + IsInline = true + IsExtension = false } + + /// Creates an inline prop overload with the specified code for params and + /// body, implemented as a regular (non-extension) member. + let createCustom paramsCode customBodyCode = + { ParamsCode = paramsCode + BodyCode = CustomBody customBodyCode + IsInline = true + IsExtension = false } + + /// Sets whether the overload is inline. + let setInline isInline (overload: RegularPropOverload) = { overload with IsInline = isInline } + + /// Sets whether the overload is implemented as an extension member. + let setExtension isExtension (overload: RegularPropOverload) = { overload with IsExtension = isExtension } + + type EnumPropOverload = + { /// The doc lines for the enum prop's value/overload, without leading ///. + DocLines: string list + /// The name of the enum prop's value/overload. + MethodName: string + /// The code for the method parameters, e.g. `(value: string)`. Normally this + /// would be `None` (for simple enum values). + ParamsCode: string option + /// The code for the prop value expression. Normally this would be the enum + /// value, e.g. `"topRight"`. + ValueCode: string + /// Whether the member is inline. + IsInline: bool } + + module EnumPropOverload = + /// Creates an inline enum prop value/overload with the specified method name + /// and code for value expression and no docs or params. + let create methodName valueCode = + { DocLines = [] + MethodName = methodName + ParamsCode = None + ValueCode = valueCode + IsInline = true } + + /// Sets the doc lines of the enum prop value/overload. + let setDocs docLines (overload: EnumPropOverload) = { overload with DocLines = docLines } + + /// Sets the params code for the enum prop value/overload. + let setParamsCode code (overload: EnumPropOverload) = { overload with ParamsCode = Some code } + + /// Sets whether the overload is inline. + let setInline isInline (overload: EnumPropOverload) = { overload with IsInline = isInline } + + type Prop = + { /// The doc lines for the prop, without leading ///. + DocLines: string list + /// The actual name of the prop in the native API. + RealPropName: string + /// The name used for the prop overload methods. + MethodName: string + /// The prop overloads. + RegularOverloads: RegularPropOverload list + /// The prop overloads. + EnumOverloads: EnumPropOverload list + /// Components within the prop + Components: Component list } + + module Prop = + /// Creates a prop with the specified native API name and method name and no + /// docs or overloads. + let create realPropName methodName = + { DocLines = [] + RealPropName = realPropName + MethodName = methodName + RegularOverloads = [] + EnumOverloads = [] + Components = [] } + + /// Sets the prop's doc lines. + let setDocs docLines (prop: Prop) = { prop with DocLines = docLines } + + /// Adds the specified regular (non-enum) overload to the prop. + let addRegularOverload overload prop = { prop with RegularOverloads = prop.RegularOverloads @ [ overload ] } + + /// Adds the specified enum value/overload to the prop. + let addEnumOverload overload prop = { prop with EnumOverloads = prop.EnumOverloads @ [ overload ] } + + let addComponent comp (prop: Prop) = { prop with Components = prop.Components @ [ comp ] } + + /// Indicates whether all regular prop overloads are inline. + let allRegularOverloadsAreInline prop = prop.RegularOverloads |> List.forall (fun o -> o.IsInline) + + type ComponentOverload = + { /// The code for the method parameters, e.g. `props` or `(text: string)`. + ParamsCode: string + /// The expression for the props passed to the created element, e.g. `props` + /// or `[ prop.children (Html.text text) ]`. + PropsCode: string + /// Whether the member is inline. + IsInline: bool } + + module ComponentOverload = + /// A default overload that accepts and passes a list of props. + let defaults name = + [ { ParamsCode = sprintf "(properties: #I%sProperty list)" (name |> String.upperFirst) + PropsCode = "(createObj !!properties)" + IsInline = true } + { ParamsCode = sprintf "(properties: (bool * I%sProperty list) list)" (name |> String.upperFirst) + PropsCode = "(properties |> Bindings.Internal.withConditionals)" + IsInline = false } ] + + /// Creates an inline component overload with the specified code for params + /// and props expression. + let create paramsCode propsCode = + { ParamsCode = paramsCode + PropsCode = propsCode + IsInline = true } + + /// Sets whether the overload is inline. + let setInline isInline (overload: ComponentOverload) = { overload with IsInline = isInline } + + type Component = + { /// The doc lines for the component, without leading ///. + DocLines: string list + /// The name used for the component overloads. + MethodName: string + /// The path the component will be imported from. + ImportSelector: string option + /// The overloads used to create the component. + Overloads: ComponentOverload list + /// The component's props. + Props: Prop list } + + module Component = + /// Creates a component with the specified method name and import path, no + /// documentation, import selector, or props, and the default component + /// overload. + let create methodName = + { DocLines = [] + MethodName = methodName + ImportSelector = None + Overloads = ComponentOverload.defaults methodName + Props = [] } + + /// Sets the import selector of the component. + let setImportSelector selector comp = { comp with ImportSelector = Some selector } + + /// Sets the component's doc lines. + let setDocs docLines (comp: Component) = { comp with DocLines = docLines } + + /// Adds the specified overload to the component. + let addOverload overload comp = { comp with Overloads = comp.Overloads @ [ overload ] } + + /// Removes the default overload that accepts a list of props. + let removeDefaultOverload comp = + { comp with Overloads = comp.Overloads |> List.except (ComponentOverload.defaults comp.MethodName) } + + /// Adds the specified prop to the component. + let addProp prop comp = { comp with Props = comp.Props @ [ prop ] } + + /// Indicates whether all components have only inline overloads. + let hasOnlyInlineOverloads comp = comp.Overloads |> List.forall (fun o -> o.IsInline) + + type ComponentApi = + { /// The namespace for the API. + Namespace: string + /// Lines to insert before the component definitions. + ComponentsPrelude: string list + /// Lines to insert before the prop definitions. + PropsPrelude: string list + /// The name of the module the types are placed under. + ComponentContainerName: string + /// The type the component methods will be placed in. + ComponentContainerTypeName: string + /// All components in the API. + Components: Component list + /// Bindings for the API. + Bindings: (string * string) list + TypePostlude: (string * string) list } + + module ComponentApi = + /// Creates a component API with the specified namespace and component type + /// name and no components. + let create namespace' typeName containerName bindings typePostlude = + { Namespace = namespace' + ComponentsPrelude = [] + PropsPrelude = [] + ComponentContainerName = containerName + ComponentContainerTypeName = typeName + Components = [] + Bindings = bindings + TypePostlude = typePostlude } + + /// Adds the specified component to the API. + let addComponent component' api: ComponentApi = { api with Components = api.Components @ [ component' ] } + + /// Adds the specified components prelude to the API. + let setComponentsPrelude lines api = { api with ComponentsPrelude = lines } + + /// Adds the specified props prelude to the API. + let setPropsPrelude lines api = { api with PropsPrelude = lines } + + type PlotlyComponentApi = + { GeneratorComponentApi: ComponentApi + PlotlyComponents: Component list } diff --git a/src/Feliz.Generator.Plotly/Feliz.Generator.Plotly.fsproj b/src/Feliz.Generator.Plotly/Feliz.Generator.Plotly.fsproj new file mode 100644 index 0000000..1ddc112 --- /dev/null +++ b/src/Feliz.Generator.Plotly/Feliz.Generator.Plotly.fsproj @@ -0,0 +1,21 @@ + + + + netcoreapp3.0 + Exe + + + + True + Schema/plot-schema.json + + + + + + + + + + + \ No newline at end of file diff --git a/src/Feliz.Generator.Plotly/Program.fs b/src/Feliz.Generator.Plotly/Program.fs new file mode 100644 index 0000000..c84ed60 --- /dev/null +++ b/src/Feliz.Generator.Plotly/Program.fs @@ -0,0 +1,30 @@ +namespace Fable.Plotly.Generator + +module Program = + open Fake.IO + open Fake.IO.FileSystemOperators + + [] + let main _ = + async { + let api = ApiParser.parseApi() + let plotlyFile = __SOURCE_DIRECTORY__ @@ "../Feliz.Plotly/Plotly.fs" + let interopFile = __SOURCE_DIRECTORY__ @@ "../Feliz.Plotly/Interop.fs" + let typesFile = __SOURCE_DIRECTORY__ @@ "../Feliz.Plotly/Types.fs" + let propsDir = __SOURCE_DIRECTORY__ @@ "../Feliz.Plotly/Props" + + Render.componentDocument api.GeneratorComponentApi |> File.writeString false plotlyFile + + Render.interopDocument api.GeneratorComponentApi |> File.writeString false interopFile + + Render.typesDocument api.GeneratorComponentApi |> File.writeString false typesFile + + api.GeneratorComponentApi + |> Render.propsDocument true + |> List.iter (fun (name, doc) -> + let path = propsDir @@ (sprintf "%s.fs" (name |> String.upperFirst)) + File.writeString false path doc) + + return 0 + } + |> Async.RunSynchronously diff --git a/src/Feliz.Generator.Plotly/Render.fs b/src/Feliz.Generator.Plotly/Render.fs new file mode 100644 index 0000000..8a065a0 --- /dev/null +++ b/src/Feliz.Generator.Plotly/Render.fs @@ -0,0 +1,317 @@ +namespace Fable.Plotly.Generator + +module Render = + open System + open Utils + open Domain + + let indent numLevels = String.indent 4 numLevels + + module GetLines = + /// static member inline data (properties: #IDataProperty list) = Interop.mkPlotAttr "Data" (createObj !!properties) + + /// Gets the code lines for the implementation of a single component overload. + /// Does not include docs. + let singleComponentOverload (comp: Component) (interopFun: string) (compOverload: ComponentOverload) = + sprintf "static member %s%s %s = Interop.%s \"%s\" %s" + (if compOverload.IsInline then "inline " + else "") comp.MethodName compOverload.ParamsCode interopFun comp.MethodName compOverload.PropsCode + |> List.singleton + + /// Gets the code lines for the implementation of a single regular (non-enum) + /// prop overload. Does not include docs. + let singlePropRegularOverload (prop: Prop) (propOverload: RegularPropOverload) = + let bodyCode = + match propOverload.BodyCode with + | ValueExprOnly expr -> sprintf "Interop.mkPlotAttr \"%s\" %s" prop.RealPropName expr + | CustomBody code -> code + sprintf "static member %s%s %s = %s" + (if propOverload.IsInline then "inline " + else "") prop.MethodName propOverload.ParamsCode bodyCode |> List.singleton + + /// Gets the code lines for the implementation of a single regular (non-enum) + /// prop overload. Does not include docs. + let singlePropEnumOverload (prop: Prop) (propOverload: EnumPropOverload) = + sprintf "static member %s%s %s= Interop.mkPlotAttr \"%s\" %s" + (if propOverload.IsInline then "inline " + else "") propOverload.MethodName + (match propOverload.ParamsCode with + | Some s -> s + " " + | None -> "") prop.RealPropName propOverload.ValueCode + |> emptStringToNone + |> List.singleton + + let regularNonExtensionPropsForComponent (comp: Component) indentLevel = + let propsAndRegularNonExtensionOverloads = + comp.Props + |> List.choose (fun p -> + let regularNonExtensionOverloads = p.RegularOverloads |> List.filter (fun o -> not o.IsExtension) + if regularNonExtensionOverloads.IsEmpty then None + else Some(p, regularNonExtensionOverloads)) + + if propsAndRegularNonExtensionOverloads.IsEmpty then + [] + else + let allOverloadsAreInline = + propsAndRegularNonExtensionOverloads + |> List.forall (fun (_, os) -> os |> List.forall (fun o -> o.IsInline)) + [ if allOverloadsAreInline then "[]" |> indent indentLevel + sprintf "type %s =" comp.MethodName |> indent indentLevel + + for prop, overloads in propsAndRegularNonExtensionOverloads do + for overload in overloads do + yield! prop.DocLines + |> List.map + (String.prefix "/// " + >> String.trim + >> indent (indentLevel + 1)) + yield! singlePropRegularOverload prop overload |> List.map (indent (indentLevel + 1)) ] + + let regularExtensionPropsForComponent (comp: Component) indentLevel = + let propsAndRegularExtensionOverloads = + comp.Props + |> List.choose (fun p -> + let regularExtensionOverloads = p.RegularOverloads |> List.filter (fun o -> o.IsExtension) + if regularExtensionOverloads.IsEmpty then None + else Some(p, regularExtensionOverloads)) + + if propsAndRegularExtensionOverloads.IsEmpty then + [] + else + [ "[]" |> indent indentLevel + sprintf "module %sExtensions =" comp.MethodName |> indent indentLevel + "" + sprintf "type %s with" comp.MethodName |> indent (indentLevel + 1) + + for prop, overloads in propsAndRegularExtensionOverloads do + for overload in overloads do + yield! prop.DocLines + |> List.map + (String.prefix "/// " + >> String.trim + >> indent (indentLevel + 2)) + yield! singlePropRegularOverload prop overload |> List.map (indent (indentLevel + 2)) ] + + let enumPropsForComponent (comp: Component) indentLevel = + let propsAndEnumOverloads = + comp.Props + |> List.choose (fun p -> + if p.EnumOverloads.IsEmpty then None + else Some(p, p.EnumOverloads)) + + if propsAndEnumOverloads.IsEmpty then + [] + else + [ for prop, overloads in propsAndEnumOverloads do + let allOverloadsAreInline = overloads |> List.forall (fun o -> o.IsInline) + yield! prop.DocLines + |> List.map + (String.prefix "/// " + >> String.trim + >> indent (indentLevel + 1)) + if allOverloadsAreInline then "[]" |> indent (indentLevel + 1) + sprintf "type %s =" prop.MethodName |> indent (indentLevel + 1) + for overload in overloads do + yield! overload.DocLines + |> List.map + (String.prefix "/// " + >> String.trim + >> indent (indentLevel + 2)) + yield! singlePropEnumOverload prop overload |> List.map (indent (indentLevel + 2)) + "" ] + + let compPropsForComponent (comp: Component) = + comp.Props + |> List.choose (fun p -> + if p.Components.IsEmpty then None + else Some [ p.Components ]) + |> (List.concat >> List.concat) + + let getCompStrList comp indentLevel = + comp.Overloads + |> List.collect (fun overload -> + singleComponentOverload comp + (comp.MethodName + |> String.upperFirst + |> sprintf "mk%sAttr") overload + |> List.map (indent (indentLevel + 1))) + + let rec propsForComponent indentStart (comp: Component) = + let regularProps = regularNonExtensionPropsForComponent comp indentStart + let regularExtensionProps = regularExtensionPropsForComponent comp indentStart + let enumProps = enumPropsForComponent comp indentStart + + let compProps = compPropsForComponent comp |> List.collect (propsForComponent (indentStart + 1)) + + [ if not regularProps.IsEmpty then + yield! regularProps + "" + if not regularExtensionProps.IsEmpty then + yield! regularExtensionProps + "" + if enumProps.Length + compProps.Length > 0 then + sprintf "module %s =" comp.MethodName |> indent indentStart + yield! enumProps + yield! compProps ] + + let rec subComponentsForComponent depth (comp: Component) = + let actualDepth = depth + 1 + + let compComps = compPropsForComponent comp |> List.collect (subComponentsForComponent actualDepth) + + if depth = 0 then [] + else getCompStrList comp 1 + |> List.append compComps + + let private getComponentNames (comps: Component list) = + comps + |> List.collect compPropsForComponent + |> List.append comps + |> List.map (fun comp -> comp.MethodName |> String.upperFirst) + |> List.distinct + + let private getComponents (comps: Component list) = + comps + |> List.collect compPropsForComponent + |> List.append comps + |> List.distinct + + let buildComponentsForComponent (comps: Component list) = + let buildLine comp overload = + singleComponentOverload comp + (comp.MethodName + |> String.upperFirst + |> sprintf "mk%sAttr") overload + + comps + |> getComponents + |> List.collect (fun c -> c.Overloads |> List.collect (buildLine c)) + |> List.map (indent 1) + + let buildInterfaces (comps: Component list) = + let interfaceStr s = + [ sprintf "type I%sProperty = interface end" s + "" ] + + comps + |> getComponentNames + |> List.collect interfaceStr + + let buildInterops (comps: Component list) = + let interopStr s = + sprintf "let inline mk%sAttr (key: string) (value: obj) : I%sProperty = unbox (key, value)" s s + |> indent 1 + + comps + |> getComponentNames + |> List.map interopStr + + let interopDocument (api: ComponentApi) = + [ sprintf "namespace %s" api.Namespace + "" + "(*////////////////////////////////" + "/// THIS FILE IS AUTO-GENERATED //" + "////////////////////////////////*)" + "" + "[]" + "module Interop =" + sprintf "let inline mk%sAttr (key: string) (value: obj) : I%sProperty = unbox (key, value)" + api.ComponentContainerTypeName api.ComponentContainerTypeName |> indent 1 + yield! GetLines.buildInterops api.Components + "" ] + |> String.concat Environment.NewLine + + let typesDocument (api: ComponentApi) = + [ sprintf "namespace %s" api.Namespace + "" + "(*////////////////////////////////" + "/// THIS FILE IS AUTO-GENERATED //" + "////////////////////////////////*)" + "" + sprintf "type I%sProperty = interface end" api.ComponentContainerTypeName + "" + yield! GetLines.buildInterfaces api.Components + "" ] + |> String.concat Environment.NewLine + + let componentDocument (api: ComponentApi) = + [ sprintf "namespace %s" api.Namespace + "" + "(*////////////////////////////////" + "/// THIS FILE IS AUTO-GENERATED //" + "////////////////////////////////*)" + "" + if not api.ComponentsPrelude.IsEmpty then "open System.ComponentModel" + "open Browser.Types" + "open Fable.Core" + "open Fable.Core.JsInterop" + "open Fable.React" + "open Feliz" + "" + if not api.ComponentsPrelude.IsEmpty then + "[]" + sprintf "module %sHelpers =" api.ComponentContainerTypeName + "" + yield! api.ComponentsPrelude + "" + "[]" + sprintf "type %s =" api.ComponentContainerTypeName + yield! GetLines.buildComponentsForComponent api.Components + for doc, cont in api.TypePostlude do + if doc + |> String.IsNullOrEmpty + |> not + then + doc + |> String.prefix "/// " + |> String.trim + |> indent 1 + cont |> indent 1 + "" + if api.Bindings.Length > 0 then + "[]" + sprintf "type %s =" api.ComponentContainerName + for (docs, binding) in api.Bindings do + if docs + |> String.IsNullOrEmpty + |> not + then + docs + |> String.prefix "/// " + |> String.trim + |> indent 1 + binding |> indent 1 + "" ] + |> String.concat Environment.NewLine + + let propsDocument (chunk: bool) (api: ComponentApi) = + let buildDoc (comps: Component list) = + [ sprintf "namespace %s" api.Namespace + "" + "(*////////////////////////////////" + "/// THIS FILE IS AUTO-GENERATED //" + "////////////////////////////////*)" + "" + "open System" + "open Browser.Types" + "open Fable.Core" + "open Fable.Core.JsInterop" + "open Feliz" + "" + if not api.PropsPrelude.IsEmpty then + yield! api.PropsPrelude + "" + for comp in comps do + yield! GetLines.propsForComponent 0 comp + "" ] + |> String.concat Environment.NewLine + + if chunk then + api.Components + |> List.map (fun comp -> + comp.MethodName, + comp + |> List.singleton + |> buildDoc) + else + [ "Props", buildDoc api.Components ] diff --git a/src/Feliz.Generator.Plotly/Utils.fs b/src/Feliz.Generator.Plotly/Utils.fs new file mode 100644 index 0000000..ed030d0 --- /dev/null +++ b/src/Feliz.Generator.Plotly/Utils.fs @@ -0,0 +1,82 @@ +namespace Fable.Plotly.Generator + + + + + + + + + +[] +module Utils = + + let flip f x y = f y x + + module String = + let trim (s: string) = s.Trim() + + /// Converts the first character to lowercase. + let lowerFirst (s: string) = s.Substring(0, 1).ToLower() + s.Substring(1) + + /// Converts the first character to uppercase. + let upperFirst (s: string) = s.Substring(0, 1).ToUpper() + s.Substring(1) + + let prefix (prefix: string) s = prefix + s + + let indent spacesPerLevel numLevels = prefix (String.replicate (numLevels * spacesPerLevel) " ") + + let containsRegex (s: string) = + [ "/"; "\\"; "$"; "^"; "|"; "["; "]" ] + |> List.filter (fun c -> s.Contains(c)) + |> List.length > 1 + + /// Splits the string on the specified separator. + let split (sep: string) (str: string) = + match sep, str with + | ((null + | ""), _) + | (_, (null + | "")) -> seq [ str ] + | _ -> + let n, j = str.Length, sep.Length + + let rec loop p = + seq { + if p < n then + let i = + match str.IndexOf(sep, p) with + | -1 -> n + | i -> i + yield str.Substring(p, i - p) + yield! loop (i + j) + } + loop 0 + + module List = + /// Returns the list after removing the first N elements. If the list has less + /// than N elements, returns an empty list. + let trySkip count list = + if List.length list < count then [] + else List.skip count list + + let trimEmptyLines list = + list + |> List.skipWhile ((=) "") + |> List.rev + |> List.skipWhile ((=) "") + |> List.rev + + module Seq = + let trimEmptyLines list = + list + |> Seq.skipWhile ((=) "") + |> Seq.rev + |> Seq.skipWhile ((=) "") + |> Seq.rev + + module JsonValue = + open FSharp.Data + + let asString (j: JsonValue) = j.ToString() + let tryGetProp s (j: JsonValue) = j.TryGetProperty(s) diff --git a/src/Feliz.Generator.Plotly/paket.references b/src/Feliz.Generator.Plotly/paket.references new file mode 100644 index 0000000..8f7ac88 --- /dev/null +++ b/src/Feliz.Generator.Plotly/paket.references @@ -0,0 +1,5 @@ +group Generator + Fake.IO.FileSystem + FSharp.Core + FSharp.Data + File: plot-schema.json Schema \ No newline at end of file diff --git a/src/Feliz.Plotly/AssemblyInfo.fs b/src/Feliz.Plotly/AssemblyInfo.fs new file mode 100644 index 0000000..63916d1 --- /dev/null +++ b/src/Feliz.Plotly/AssemblyInfo.fs @@ -0,0 +1,22 @@ +// Auto-Generated by FAKE; do not edit +namespace System +open System.Reflection +open System.Runtime.CompilerServices + +[] +[] +[] +[] +[] +[] +[] +do () + +module internal AssemblyVersionInformation = + let [] AssemblyTitle = "Feliz.Plotly" + let [] AssemblyProduct = "Feliz.Plotly" + let [] AssemblyDescription = "Fable bindings written in the Feliz-style for plotly.js" + let [] AssemblyVersion = "0.0.1" + let [] AssemblyFileVersion = "0.0.1" + let [] AssemblyConfiguration = "Release" + let [] InternalsVisibleTo = "Feliz.Plotly.Tests" diff --git a/src/Feliz.Plotly/Bindings.fs b/src/Feliz.Plotly/Bindings.fs new file mode 100644 index 0000000..e063549 --- /dev/null +++ b/src/Feliz.Plotly/Bindings.fs @@ -0,0 +1,2058 @@ +namespace Feliz.Plotly + +module rec Bindings = + open Browser.Types + open Fable.Core.JsInterop + open Fable.Core + open Fable.React + open System + + module Internal = + let plotly: obj = importAll "plotly.js" + let plotFactory: obj -> obj = importDefault "react-plotly.js/factory.js" + let plotComponent = plotFactory plotly + let createPlot props: ReactElement = ReactBindings.React.createElement (plotComponent, props, []) + + let withConditionals (properties: (bool * 'a list) list) = + properties + |> List.filter fst + |> List.collect snd + |> unbox + |> createObj + +// type Datum = U3 option + +// [] +// module Datum = +// let ofStringOption v: Datum = v |> Microsoft.FSharp.Core.Option.map U3.Case1 + +// let ofString v: Datum = +// v +// |> U3.Case1 +// |> Some + +// let isString (v: Datum) = +// match v with +// | None -> false +// | Some o -> +// match o with +// | U3.Case1 _ -> true +// | _ -> false + +// let asString (v: Datum) = +// match v with +// | None -> None +// | Some o -> +// match o with +// | U3.Case1 o -> Some o +// | _ -> None + +// let ofFloatOption v: Datum = v |> Microsoft.FSharp.Core.Option.map U3.Case2 + +// let ofFloat v: Datum = +// v +// |> U3.Case2 +// |> Some + +// let isFloat (v: Datum) = +// match v with +// | None -> false +// | Some o -> +// match o with +// | U3.Case2 _ -> true +// | _ -> false + +// let asFloat (v: Datum) = +// match v with +// | None -> None +// | Some o -> +// match o with +// | U3.Case2 o -> Some o +// | _ -> None + +// let ofDateTimeOption v: Datum = v |> Microsoft.FSharp.Core.Option.map U3.Case3 + +// let ofDateTime v: Datum = +// v +// |> U3.Case3 +// |> Some + +// let isDateTime (v: Datum) = +// match v with +// | None -> false +// | Some o -> +// match o with +// | U3.Case3 _ -> true +// | _ -> false + +// let asDateTime (v: Datum) = +// match v with +// | None -> None +// | Some o -> +// match o with +// | U3.Case3 o -> Some o +// | _ -> None + + +// type ErrorBar = obj + +// //[] +// //module ErrorBar = +// // let ofType v: ErrorBar = v |> U6.Case1 +// // let isType (v: ErrorBar) = match v with U6.Case1 _ -> true | _ -> false +// // let asType (v: ErrorBar) = match v with U6.Case1 o -> Some o | _ -> None +// // let ofValue v: ErrorBar = v |> U6.Case2 +// // let isValue (v: ErrorBar) = match v with U6.Case2 _ -> true | _ -> false +// // let asValue (v: ErrorBar) = match v with U6.Case2 o -> Some o | _ -> None +// // let ofValueminus v: ErrorBar = v |> U6.Case3 +// // let isValueminus (v: ErrorBar) = match v with U6.Case3 _ -> true | _ -> false +// // let asValueminus (v: ErrorBar) = match v with U6.Case3 o -> Some o | _ -> None +// // let ofType v: ErrorBar = v |> U6.Case4 +// // let isType (v: ErrorBar) = match v with U6.Case4 _ -> true | _ -> false +// // let asType (v: ErrorBar) = match v with U6.Case4 o -> Some o | _ -> None +// // let ofArray v: ErrorBar = v |> U6.Case5 +// // let isArray (v: ErrorBar) = match v with U6.Case5 _ -> true | _ -> false +// // let asArray (v: ErrorBar) = match v with U6.Case5 o -> Some o | _ -> None +// // let ofArrayminus v: ErrorBar = v |> U6.Case6 +// // let isArrayminus (v: ErrorBar) = match v with U6.Case6 _ -> true | _ -> false +// // let asArrayminus (v: ErrorBar) = match v with U6.Case6 o -> Some o | _ -> None + +// type Color = U4 [] option, U2 option [] []> + +// [] +// module Color = +// let ofString v: Color = v |> U4.Case1 + +// let isString (v: Color) = +// match v with +// | U4.Case1 _ -> true +// | _ -> false + +// let asString (v: Color) = +// match v with +// | U4.Case1 o -> Some o +// | _ -> None + +// let ofFloat v: Color = v |> U4.Case2 + +// let isFloat (v: Color) = +// match v with +// | U4.Case2 _ -> true +// | _ -> false + +// let asFloat (v: Color) = +// match v with +// | U4.Case2 o -> Some o +// | _ -> None + +// let ofArray v: Color = v |> U4.Case3 +// //let isArray (v: Color) = match v with U4.Case3 _ -> true | _ -> false +// //let asArray (v: Color) = match v with U4.Case3 o -> Some o | _ -> None +// let ofArray2D v: Color = v |> U4.Case4 +// //let isArray2D (v: Color) = match v with U4.Case4 _ -> true | _ -> false +// //let asArray2D (v: Color) = match v with U4.Case4 o -> Some o | _ -> None + +// type ColorScale = U3, (float * string) []> + +// [] +// module ColorScale = +// let ofString v: ColorScale = v |> U3.Case1 + +// let isString (v: ColorScale) = +// match v with +// | U3.Case1 _ -> true +// | _ -> false + +// let asString (v: ColorScale) = +// match v with +// | U3.Case1 o -> Some o +// | _ -> None + +// let ofStringArray v: ColorScale = v |> U3.Case2 + +// let isStringArray (v: ColorScale) = +// match v with +// | U3.Case2 _ -> true +// | _ -> false + +// let asStringArray (v: ColorScale) = +// match v with +// | U3.Case2 o -> Some o +// | _ -> None + +// let ofArray v: ColorScale = v |> U3.Case3 + +// let isArray (v: ColorScale) = +// match v with +// | U3.Case3 _ -> true +// | _ -> false + +// let asArray (v: ColorScale) = +// match v with +// | U3.Case3 o -> Some o +// | _ -> None + +// [] +// type Dash = +// | Solid +// | Dot +// | Dash +// | Longdash +// | Dashdot +// | Longdashdot + +// type Data = PlotData // Partial + +// type DataTransform = Transform // Partial + +// type ScatterData = PlotData + +// [] +// type Orientation = +// | V +// | H + +// [] +// type MarkerSizeMode = +// | Diameter +// | Area + +// [] +// type LineShape = +// | Linear +// | Spline +// | Hv +// | Vh +// | Hvh +// | Vhv + +// [] +// module Gradient = +// [] +// type Type = +// | Radial +// | Horizontal +// | Vertical +// | None + +// [] +// type Gradient = +// abstract ``type``: Gradient.Type with get, set +// abstract color: Color with get, set +// abstract typesrc: obj option with get, set // any +// abstract colorsrc: obj option with get, set // any + +// [] +// type TickFormatStops = +// abstract dtickrange: ResizeArray with get, set //? +// abstract value: string with get, set + +// [] +// module Transition = +// [] +// type Easing = +// | Linear +// | Quad +// | Cubic +// | Sin +// | Exp +// | Circle +// | Elastic +// | Back +// | Bounce +// | [] LinearIn +// | [] QuadIn +// | [] CubicIn +// | [] SinIn +// | [] ExpIn +// | [] CircleIn +// | [] ElasticIn +// | [] BackIn +// | [] BounceIn +// | [] LinearOut +// | [] QuadOut +// | [] CubicOut +// | [] SinOut +// | [] ExpOut +// | [] CircleOut +// | [] ElasticOut +// | [] BackOut +// | [] BounceOut +// | [] LinearInOut +// | [] QuadInOut +// | [] CubicInOut +// | [] SinInOut +// | [] ExpInOut +// | [] CircleInOut +// | [] ElasticInOut +// | [] BackInOut +// | [] BounceInOut + +// [] +// type Transition = +// /// Sets the duration of the slider transition +// abstract duration: float with get, set +// /// Sets the easing function of the slider transition +// abstract easing: Transition.Easing with get, set + +// [] +// type FrameAnimation = +// abstract duration: float with get, set +// abstract redraw: bool with get, set + +// [] +// type Animation = +// abstract frame: FrameAnimation with get, set +// abstract transition: Transition with get, set + +// [] +// type XBins = +// abstract start: U2 with get, set +// abstract ``end``: U2 with get, set +// abstract size: U2 with get, set + +// [] +// module PlotData = +// [] +// type Type = +// | Bar +// | Box +// | Candlestick +// | Choropleth +// | Contour +// | Heatmap +// | Histogram +// | Mesh3d +// | Ohlc +// | Paroords +// | Pie +// | [] PointCloud +// | Scatter +// | Scatter3d +// | [] ScatterGeo +// | [] ScatterGL +// | [] ScatterPolar +// | [] ScatterTernary +// | Surface + +// [] +// type Mode = +// | Lines +// | Markers +// | Text +// | [] LinesAndMarkers +// | [] TextAndMarkers +// | [] TextAndLines +// | [] TextLinesAndMarkers +// | None + +// [] +// type HoverOn = +// | Points +// | Fills + +// [] +// type HoverInfo = +// | All +// | Name +// | None +// | Skip +// | Text +// | X +// | [] XAndText +// | [] XAndName +// | [] XAndY +// | [] XYAndText +// | [] XYAndName +// | [] XYAndY +// | [] XYZAndText +// | [] XYZAndName +// | [] YAndName +// | [] YAndX +// | [] YAndText +// | [] YXAndText +// | [] YXAndName +// | [] YAndZ +// | [] YZAndText +// | [] YZAndName +// | [] YXAndZ +// | [] YXZAndText +// | [] YXZAndName +// | [] ZAndX +// | [] ZXAndText +// | [] ZXAndName +// | [] ZYAndX +// | [] ZYXandText +// | [] ZYXAndName +// | [] ZXAndY +// | [] ZXYAndText +// | [] ZXYAndName + +// [] +// type TextInfo = +// | Label +// | [] LabelAndText +// | [] LabelAndValue +// | [] LabelAndPercent +// | [] LabelTextAndValue +// | [] LabelTextAndPercent +// | [] LabelValueAndPercent +// | Text +// | [] TextAndValue +// | [] TextAndPercent +// | [] TextValueAndPercent +// | Value +// | [] ValueAndPercent +// | Percent +// | None + +// [] +// type TextPosition = +// | TopLeft +// | TopCenter +// | TopRight +// | MiddleLeft +// | MiddleCenter +// | MiddleRight +// | BottomLeft +// | BottomCenter +// | BottomRight +// | Inside + +// [] +// type Fill = +// | None +// | [] ToZeroY +// | [] ToZeroX +// | [] ToNextY +// | [] ToNextX +// | [] ToSelf +// | [] ToNext + +// [] +// type BoxMean = Sd + +// [] +// type ZSmooth = +// | Fast +// | Best + +// [] +// type PlotData = +// abstract ``type``: PlotData.Type with get, set +// abstract x: U3, ResizeArray>, 'T []> with get, set +// abstract y: U3, ResizeArray>, 'T []> with get, set +// abstract z: U4, ResizeArray>, ResizeArray>>, 'T []> with get, set +// abstract xy: obj with get, set +// abstract error_x: ErrorBar with get, set +// abstract error_y: ErrorBar with get, set +// abstract xaxis: string with get, set +// abstract yaxis: string with get, set +// abstract text: U2> with get, set +// abstract line: ScatterLine with get, set // Partial +// abstract ``line.color``: Color with get, set +// abstract ``line.width``: float with get, set +// abstract ``line.dash``: Dash with get, set +// abstract ``line.shape``: LineShape with get, set +// abstract ``line.smoothing``: float with get, set +// abstract ``line.simplify``: bool with get, set +// abstract marker: PlotMarker with get, set // Partial +// abstract ``marker.symbol``: U2> with get, set +// abstract ``marker.color``: Color with get, set +// abstract ``marker.opacity``: U2> with get, set +// abstract ``marker.size``: U2> with get, set +// abstract ``marker.maxdisplayed``: float with get, set +// abstract ``marker.sizeref``: float with get, set +// abstract ``marker.sizemax``: float with get, set +// abstract ``marker.sizemin``: float with get, set +// abstract ``marker.sizemode``: MarkerSizeMode with get, set +// abstract ``marker.showscale``: bool with get, set +// abstract ``marker.line``: ScatterMarkerLine with get, set // Partial +// abstract ``marker.colorbar``: ColorBar with get, set +// abstract mode: PlotData.Mode with get, set +// abstract hoveron: PlotData.HoverOn with get, set +// abstract hoverinfo: PlotData.HoverInfo with get, set +// abstract hoverlabel: HoverLabel with get, set // Partial +// abstract hovertemplate: U2> with get, set +// abstract textinfo: PlotData.TextInfo with get, set +// abstract textposition: PlotData.TextPosition with get, set +// abstract fill: PlotData.Fill with get, set +// abstract fillcolor: string with get, set +// abstract legendgroup: string with get, set +// abstract name: string with get, set +// abstract stackgroup: string with get, set +// abstract connectgaps: bool with get, set +// abstract visible: U2 with get, set +// abstract transforms: ResizeArray with get, set +// abstract orientation: Orientation with get, set +// abstract width: U2> with get, set +// abstract boxmean: U2 with get, set +// abstract colorscale: ColorScale with get, set +// abstract zsmooth: U2 with get, set +// abstract ygap: float with get, set +// abstract xgap: float with get, set +// abstract transpose: bool with get, set +// abstract autobinx: bool with get, set +// abstract xbins: XBins with get, set +// abstract values: ResizeArray with get, set +// abstract labels: ResizeArray with get, set +// abstract hole: float with get, set +// abstract rotation: float with get, set +// abstract theta: ResizeArray with get, set +// abstract r: ResizeArray with get, set + +// [] +// type Point = +// abstract x: float with get, set +// abstract y: float with get, set +// abstract z: float with get, set + +// [] +// module Axis = +// [] +// type RangeMode = +// | Normal +// | [] ToZero +// | [] NonNegative + +// [] +// type Mirror = +// | Ticks +// | All +// | [] AllTicks + +// [] +// type CategoryOrder = +// | Trace +// | [] Ascending +// | [] Descending +// | Array + +// [] +// type Constrain = +// | Range +// | Domain + +// [] +// type ConstrainToward = +// | Left +// | Center +// | Right +// | Top +// | Middle +// | Bottom + +// [] +// type Name = +// | X +// | X2 +// | X3 +// | X4 +// | X5 +// | X6 +// | X7 +// | X8 +// | X9 +// | Y +// | Y2 +// | Y3 +// | Y4 +// | Y5 +// | Y6 +// | Y7 +// | Y8 +// | Y9 + +// [] +// type Positioning = +// | Free +// | X +// | X2 +// | X3 +// | X4 +// | X5 +// | X6 +// | X7 +// | X8 +// | X9 +// | Y +// | Y2 +// | Y3 +// | Y4 +// | Y5 +// | Y6 +// | Y7 +// | Y8 +// | Y9 + +// [] +// type Side = +// | Top +// | Bottom +// | Left +// | Right + +// [] +// type Layer = +// | [] AboveTraces +// | [] BelowTraces + +// [] +// type AxisType = +// | [] Dash +// | Linear +// | Log +// | Date +// | Category + +// [] +// type TickMode = +// | Auto +// | Linear +// | Array + +// [] +// type Ticks = +// | Outside +// | Inside +// | [] None + +// [] +// type ShowOptions = +// | All +// | First +// | Last +// | None + +// [] +// type ExponentFormat = +// | None +// | [] LowerE +// | [] UpperE +// | Power +// | SI +// | B + +// [] +// type Calendar = +// | Gregorian +// | Chinese +// | Coptic +// | Discworld +// | Ethiopian +// | Hebrew +// | Islamic +// | Julian +// | Mayan +// | Nanakshahi +// | Nepali +// | Persian +// | Jalali +// | Taiwan +// | Thai +// | Ummalqura + +// [] +// type Axis = +// abstract visible: bool with get, set +// abstract color: Color with get, set +// abstract title: string with get, set +// abstract titlefont: Font with get, set +// abstract ``type``: AxisType with get, set +// abstract autorange: U2 with get, set +// abstract rangemode: Axis.RangeMode with get, set +// abstract range: ResizeArray with get, set +// abstract tickmode: TickMode with get, set +// abstract nticks: float with get, set +// abstract tick0: U2 with get, set +// abstract dtick: U2 with get, set +// abstract tickvals: ResizeArray with get, set +// abstract ticktext: ResizeArray with get, set +// abstract ticks: Ticks with get, set +// abstract mirror: U2 with get, set +// abstract ticklen: float with get, set +// abstract tickwidth: float with get, set +// abstract tickcolor: Color with get, set +// abstract showticklabels: bool with get, set +// abstract showspikes: bool with get, set +// abstract spikecolor: Color with get, set +// abstract spikethickness: float with get, set +// abstract categoryorder: U4 with get, set +// abstract categoryarray: ResizeArray with get, set +// abstract tickfont: Font with get, set +// abstract tickangle: float with get, set +// abstract tickprefix: string with get, set +// abstract showtickprefix: ShowOptions with get, set +// abstract ticksuffix: string with get, set +// abstract showticksuffix: ShowOptions with get, set +// abstract showexponent: ShowOptions with get, set +// abstract exponentformat: ExponentFormat with get, set +// abstract separatethousands: bool with get, set +// abstract tickformat: string with get, set +// abstract hoverformat: string with get, set +// abstract showline: bool with get, set +// abstract linecolor: Color with get, set +// abstract linewidth: float with get, set +// abstract showgrid: bool with get, set +// abstract gridcolor: Color with get, set +// abstract gridwidth: float with get, set +// abstract zeroline: bool with get, set +// abstract zerolinecolor: Color with get, set +// abstract zerolinewidth: float with get, set +// abstract calendar: Calendar with get, set + + +// [] +// type LayoutAxis = +// inherit Axis +// abstract fixedrange: bool with get, set +// abstract scaleanchor: Axis.Name with get, set +// abstract scaleratio: float with get, set +// abstract constrain: Axis.Constrain with get, set +// abstract constraintoward: Axis.ConstrainToward with get, set +// abstract spikedash: string with get, set +// abstract spikemode: string with get, set +// abstract anchor: Axis.Positioning with get, set +// abstract side: Axis.Side with get, set +// abstract overlaying: Axis.Positioning with get, set +// abstract layer: Axis.Layer with get, set +// abstract domain: ResizeArray with get, set +// abstract position: float with get, set +// abstract rangeslider: RangeSlider with get, set +// abstract rangeselector: RangeSelector with get, set +// abstract automargin: bool with get, set + +// [] +// type PlotScatterDataPoint = +// abstract curveNumber: float with get, set +// abstract data: PlotData with get, set +// abstract pointIndex: float with get, set +// abstract pointNumber: float with get, set +// abstract x: float with get, set +// abstract xaxis: LayoutAxis with get, set +// abstract y: float with get, set +// abstract yaxis: LayoutAxis with get, set + +// [] +// type PlotDatum = +// abstract curveNumber: float with get, set +// abstract data: PlotData with get, set +// abstract pointIndex: float with get, set +// abstract pointNumber: float with get, set +// abstract x: Datum with get, set +// abstract xaxis: LayoutAxis with get, set +// abstract y: Datum with get, set +// abstract yaxis: LayoutAxis with get, set + +// [] +// type PlotMouseEvent = +// abstract points: ResizeArray with get, set +// abstract event: MouseEvent with get, set + +// [] +// type PlotCoordinate = +// abstract x: float with get, set +// abstract y: float with get, set +// abstract pointNumber: float with get, set + +// [] +// type SelectionRange = +// abstract x: ResizeArray with get, set +// abstract y: ResizeArray with get, set + +// type PlotSelectedData = obj + +// [] +// type PlotSelectionEvent = +// inherit Event +// abstract points: ResizeArray with get, set +// abstract range: SelectionRange option with get, set +// abstract lassoPoints: SelectionRange option with get, set + +// type PlotRestyleEvent = obj option * ResizeArray + +// [] +// type PlotAxis = +// abstract range: float * float with get, set +// abstract autorange: bool with get, set + +// [] +// type PlotScene = +// abstract center: Point with get, set +// abstract eye: Point with get, set +// abstract up: Point with get, set + +// [] +// type PlotRelayoutEvent = +// abstract xaxis: PlotAxis with get, set +// abstract yaxis: PlotAxis with get, set +// abstract scene: PlotScene with get, set + +// [] +// module Annotations = +// [] +// type Align = +// | Left +// | Center +// | Right + +// [] +// type VAlign = +// | Top +// | Middle +// | Bottom + +// [] +// type ArrowSide = +// | End +// | Start + +// [] +// type AXRef = +// | Pixel +// | X +// | X2 +// | X3 +// | X4 +// | X5 +// | X6 +// | X7 +// | X8 +// | X9 + +// [] +// type AYRef = +// | Pixel +// | Y +// | Y2 +// | Y3 +// | Y4 +// | Y5 +// | Y6 +// | Y7 +// | Y8 +// | Y9 + +// [] +// type XAnchor = +// | Auto +// | Left +// | Center +// | Right + +// [] +// type YAnchor = +// | Auto +// | Top +// | Middle +// | Bottom + +// [] +// type ClickToShow = +// | [] OnOff +// | [] OnOut + +// [] +// type XRef = +// | Paper +// | X + +// [] +// type YRef = +// | Paper +// | Y + +// [] +// type Annotations = +// /// Determines whether or not this annotation is visible. +// abstract visible: bool with get, set + + +// /// Sets the text associated with this annotation. +// /// Plotly uses a subset of HTML tags to do things like +// /// newline (
), bold (), italics (), +// /// hyperlinks (). Tags , , +// /// are also supported. +// abstract text: string with get, set + + +// /// Sets the angle at which the `text` is drawn with respect to the horizontal. +// abstract textangle: string with get, set + + +// /// Sets an explicit width for the text box. null (default) lets the +// /// text set the box width. Wider text will be clipped. +// /// There is no automatic wrapping; use
to start a new line. +// abstract width: float with get, set + + +// /// Sets an explicit height for the text box. null (default) lets the +// /// text set the box height. Taller text will be clipped. +// abstract height: float with get, set + + +// /// Sets the opacity of the annotation (text + arrow). +// abstract opacity: float with get, set + + +// /// Sets the horizontal alignment of the `text` within the box. +// /// Has an effect only if `text` spans more two or more lines +// /// (i.e. `text` contains one or more
HTML tags) or if an +// /// explicit width is set to override the text width. +// abstract align: Annotations.Align with get, set + + +// /// Sets the vertical alignment of the `text` within the box. +// /// Has an effect only if an explicit height is set to override the text height. +// abstract valign: Annotations.VAlign with get, set + + +// /// Sets the padding (in px) between the `text` and the enclosing border. +// abstract borderpad: float with get, set + + +// /// Sets the width (in px) of the border enclosing the annotation `text`. +// abstract borderwidth: float with get, set + + +// /// Determines whether or not the annotation is drawn with an arrow. +// /// If *true*, `text` is placed near the arrow's tail. +// /// If *false*, `text` lines up with the `x` and `y` provided. +// abstract showarrow: bool with get, set + + +// /// Sets the color of the annotation arrow. +// abstract arrowcolor: string with get, set + + +// /// Sets the end annotation arrow head style. +// abstract arrowhead: float with get, set + + +// /// Sets the start annotation arrow head style. +// abstract startarrowhead: float with get, set + + +// /// Sets the annotation arrow head position. +// abstract arrowside: Annotations.ArrowSide with get, set + + +// /// Sets the size of the end annotation arrow head, relative to `arrowwidth`. +// /// A value of 1 (default) gives a head about 3x as wide as the line. +// abstract arrowsize: float with get, set + + +// /// Sets the size of the start annotation arrow head, relative to `arrowwidth`. +// /// A value of 1 (default) gives a head about 3x as wide as the line. +// abstract startarrowsize: float with get, set + + +// /// Sets the width (in px) of annotation arrow line. +// abstract arrowwidth: float with get, set + + +// /// Sets a distance, in pixels, to move the end arrowhead away from the +// /// position it is pointing at, for example to point at the edge of +// /// a marker independent of zoom. Note that this shortens the arrow +// /// from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` +// /// which moves everything by this amount. +// abstract standoff: float with get, set + + +// /// Sets a distance, in pixels, to move the start arrowhead away from the +// /// position it is pointing at, for example to point at the edge of +// /// a marker independent of zoom. Note that this shortens the arrow +// /// from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` +// /// which moves everything by this amount. +// abstract startstandoff: float with get, set + + +// /// Sets the x component of the arrow tail about the arrow head. +// /// If `axref` is `pixel`, a positive (negative) +// /// component corresponds to an arrow pointing +// /// from right to left (left to right). +// /// If `axref` is an axis, this is an absolute value on that axis, +// /// like `x`, NOT a relative value. +// abstract ax: float with get, set + + +// /// Sets the y component of the arrow tail about the arrow head. +// /// If `ayref` is `pixel`, a positive (negative) +// /// component corresponds to an arrow pointing +// /// from bottom to top (top to bottom). +// /// If `ayref` is an axis, this is an absolute value on that axis, +// /// like `y`, NOT a relative value. +// abstract ay: float with get, set + + +// /// Indicates in what terms the tail of the annotation (ax,ay) +// /// is specified. If `pixel`, `ax` is a relative offset in pixels +// /// from `x`. If set to an x axis id (e.g. *x* or *x2*), `ax` is +// /// specified in the same terms as that axis. This is useful +// /// for trendline annotations which should continue to indicate +// /// the correct trend when zoomed. +// abstract axref: string with get, set + + +// /// Indicates in what terms the tail of the annotation (ax,ay) +// /// is specified. If `pixel`, `ay` is a relative offset in pixels +// /// from `y`. If set to a y axis id (e.g. *y* or *y2*), `ay` is +// /// specified in the same terms as that axis. This is useful +// /// for trendline annotations which should continue to indicate +// /// the correct trend when zoomed. +// abstract ayref: string with get, set + + +// /// Sets the annotation's x coordinate axis. +// /// If set to an x axis id (e.g. *x* or *x2*), the `x` position refers to an x coordinate +// /// If set to *paper*, the `x` position refers to the distance from +// /// the left side of the plotting area in normalized coordinates +// /// where 0 (1) corresponds to the left (right) side. +// abstract xref: XRef with get, set + + +// /// Sets the annotation's x position. +// /// If the axis `type` is *log*, then you must take the log of your desired range. +// /// If the axis `type` is *date*, it should be date strings, like date data, +// /// though Date objects and unix milliseconds will be accepted and converted to strings. +// /// If the axis `type` is *category*, it should be numbers, using the scale where each +// /// category is assigned a serial number from zero in the order it appears. +// abstract x: U2 with get, set + + +// /// Sets the text box's horizontal position anchor +// /// This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. +// /// For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the +// /// right-most portion of the annotation lines up with the right-most edge of the plotting area. +// /// If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there +// /// is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side. +// abstract xanchor: Annotations.XAnchor with get, set + + +// /// Shifts the position of the whole annotation and arrow to the +// /// right (positive) or left (negative) by this many pixels. +// abstract xshift: float with get, set + + +// /// Sets the annotation's y coordinate axis. +// /// If set to an y axis id (e.g. *y* or *y2*), the `y` position refers to an y coordinate +// /// If set to *paper*, the `y` position refers to the distance from +// /// the bottom of the plotting area in normalized coordinates +// /// where 0 (1) corresponds to the bottom (top). +// abstract yref: YRef with get, set + + +// /// Sets the annotation's y position. +// /// If the axis `type` is *log*, then you must take the log of your desired range. +// /// If the axis `type` is *date*, it should be date strings, like date data, +// /// though Date objects and unix milliseconds will be accepted and converted to strings. +// /// If the axis `type` is *category*, it should be numbers, using the scale where each +// /// category is assigned a serial number from zero in the order it appears. +// abstract y: U2 with get, set + + +// /// Sets the text box's vertical position anchor +// /// This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. +// /// For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the +// /// top-most portion of the annotation lines up with the top-most edge of the plotting area. +// /// If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if +// /// there is an arrow, whereas for paper-referenced with no arrow, the anchor picked +// /// corresponds to the closest side. +// abstract yanchor: Annotations.YAnchor with get, set + + +// /// Shifts the position of the whole annotation and arrow up +// /// (positive) or down (negative) by this many pixels. +// abstract yshift: float with get, set + + +// /// Makes this annotation respond to clicks on the plot. +// /// If you click a data point that exactly matches the `x` and `y` values of this annotation, +// /// and it is hidden (visible: false), it will appear. In *onoff* mode, you must click the same +// /// point again to make it disappear, so if you click multiple points, you can show multiple +// /// annotations. In *onout* mode, a click anywhere else in the plot (on another data point or not) +// /// will hide this annotation. If you need to show/hide this annotation in response to different +// /// `x` or `y` values, you can set `xclick` and/or `yclick`. This is useful for example to label +// /// the side of a bar. To label markers though, `standoff` is preferred over `xclick` and `yclick`. +// abstract clicktoshow: U2 with get, set + + +// /// Toggle this annotation when clicking a data point whose `x` value +// /// is `xclick` rather than the annotation's `x` value. +// abstract xclick: obj option with get, set + + +// /// Toggle this annotation when clicking a data point whose `y` value +// /// is `yclick` rather than the annotation's `y` value. +// abstract yclick: obj option with get, set + + +// /// Sets text to appear when hovering over this annotation. +// /// If omitted or blank, no hover label will appear. +// abstract hovertext: string with get, set + +// abstract hoverlabel: HoverLabel with get, set // Partial +// /// Determines whether the annotation text box captures mouse move and click events, +// /// or allows those events to pass through to data points in the plot that may be +// /// behind the annotation. By default `captureevents` is *false* unless `hovertext` +// /// is provided. If you use the event `plotly_clickannotation` without `hovertext` +// /// you must explicitly enable `captureevents`. +// abstract captureevents: bool with get, set + + +// [] +// type ClickAnnotationEvent = +// abstract index: float with get, set +// abstract annotation: Annotations with get, set +// abstract fullAnnotation: Annotations with get, set +// abstract event: MouseEvent with get, set + +// [] +// [] +// type ImageFormat = +// | Jpeg +// | Png +// | Webp +// | Svg + +// [] +// type ToImgopts = +// abstract format: ImageFormat with get, set +// abstract width: float with get, set +// abstract height: float with get, set + +// [] +// type DownloadImgopts = +// abstract format: ImageFormat with get, set +// abstract width: float with get, set +// abstract height: float with get, set +// abstract filename: string with get, set + +// type Root = U2 + +// [] +// module Root = +// let ofString v: Root = v |> U2.Case1 + +// let isString (v: Root) = +// match v with +// | U2.Case1 _ -> true +// | _ -> false + +// let asString (v: Root) = +// match v with +// | U2.Case1 o -> Some o +// | _ -> None + +// let ofHTMLElement v: Root = v |> U2.Case2 +// //let isHTMLElement (v: Root) = match v with U2.Case2 _ -> true | _ -> false +// //let asHTMLElement (v: Root) = match v with U2.Case2 o -> Some o | _ -> None + +// [] +// [] +// type XAnchor = +// | Left +// | Center +// | Right + +// [] +// [] +// type YAnchor = +// | Top +// | Center +// | Right + +// [] +// [] +// type XAnchorAuto = +// | Auto +// | Left +// | Center +// | Right + +// [] +// [] +// type YAnchorAuto = +// | Auto +// | Top +// | Center +// | Right + +// [] +// module Layout = +// [] +// type Direction = +// | Clockwise +// | CounterClockwise + +// [] +// type DragMode = +// | Zoom +// | Pan +// | Select +// | Lasso +// | Orbit +// | Turntable + +// [] +// type BarMode = +// | Stack +// | Group +// | Overlay +// | Relative + +// [] +// type SelectDirection = +// | H +// | V +// | D +// | Any + +// [] +// type Layout = +// abstract title: U2 with get, set +// abstract titlefont: Font with get, set // Partial +// abstract autosize: bool with get, set +// abstract showlegend: bool with get, set +// abstract paper_bgcolor: Color with get, set +// abstract plot_bgcolor: Color with get, set +// abstract separators: string with get, set +// abstract hidesources: bool with get, set +// abstract xaxis: LayoutAxis with get, set // Partial for all *axis methods +// abstract xaxis2: LayoutAxis with get, set +// abstract xaxis3: LayoutAxis with get, set +// abstract xaxis4: LayoutAxis with get, set +// abstract xaxis5: LayoutAxis with get, set +// abstract xaxis6: LayoutAxis with get, set +// abstract xaxis7: LayoutAxis with get, set +// abstract xaxis8: LayoutAxis with get, set +// abstract xaxis9: LayoutAxis with get, set +// abstract yaxis: LayoutAxis with get, set +// abstract yaxis2: LayoutAxis with get, set +// abstract yaxis3: LayoutAxis with get, set +// abstract yaxis4: LayoutAxis with get, set +// abstract yaxis5: LayoutAxis with get, set +// abstract yaxis6: LayoutAxis with get, set +// abstract yaxis7: LayoutAxis with get, set +// abstract yaxis8: LayoutAxis with get, set +// abstract yaxis9: LayoutAxis with get, set +// abstract margin: Margin with get, set // Partial +// abstract height: float with get, set +// abstract width: float with get, set +// abstract hovermode: U4 with get, set +// abstract hoverlabel: HoverLabel with get, set // Partial +// abstract calendar: Calendar with get, set +// abstract ``xaxis.range``: Datum * Datum with get, set +// abstract ``xaxis.range[0]``: Datum with get, set +// abstract ``xaxis.range[1]``: Datum with get, set +// abstract ``yaxis.range``: Datum * Datum with get, set +// abstract ``yaxis.range[0]``: Datum with get, set +// abstract ``yaxis.range[1]``: Datum with get, set +// abstract ``yaxis.type``: AxisType with get, set +// abstract ``xaxis.type``: AxisType with get, set +// abstract ``xaxis.autorange``: bool with get, set +// abstract ``yaxis.autorange``: bool with get, set +// abstract ternary: obj with get, set +// abstract geo: obj with get, set +// abstract mapbox: obj with get, set +// abstract radialaxis: Axis with get, set // Partial +// abstract angularaxis: Axis with get, set +// abstract direction: Layout.Direction with get, set +// abstract dragmode: Layout.DragMode with get, set +// abstract orientation: float with get, set +// abstract annotations: Annotations [] with get, set // Array> +// abstract shapes: Shape [] with get, set // Array> +// abstract images: Image [] with get, set // Array> +// abstract updatemenus: obj with get, set +// abstract sliders: Slider [] with get, set // Array> +// abstract legend: Legend with get, set // Partial +// abstract font: Font with get, set // Partial +// abstract scene: Scene with get, set // Partial +// abstract barmode: Layout.BarMode with get, set +// abstract bargap: float with get, set +// abstract bargroupgap: float with get, set +// abstract selectdirection: Layout.SelectDirection with get, set + +// [] +// type Frame = +// /// An identifier that specifies the group to which the frame belongs, +// /// used by animate to select a subset of frames. +// abstract group: string with get, set +// /// A label by which to identify the frame +// abstract name: string with get, set +// /// A list of trace indices that identify the respective traces in the +// /// data attribute +// abstract traces: ResizeArray with get, set +// /// The name of the frame into which this frame's properties are merged +// /// before applying. This is used to unify properties and avoid needing +// /// to specify the same values for the same properties in multiple frames. +// abstract baseframe: string with get, set +// /// A list of traces this frame modifies. The format is identical to the +// /// normal trace definition. +// abstract data: ResizeArray with get, set +// /// Layout properties which this frame modifies. The format is identical +// /// to the normal layout definition. +// abstract layout: Layout with get, set // Partial + +// [] +// type FrameAnimationEvent = +// abstract name: string with get, set +// abstract frame: Frame with get, set +// abstract animation: Animation with get, set + + +// [] +// type Legend = +// abstract traceorder: U3 with get, set +// abstract x: float with get, set +// abstract y: float with get, set +// abstract borderwidth: float with get, set +// abstract orientation: U2 with get, set +// abstract tracegroupgap: float with get, set +// abstract xanchor: XAnchorAuto with get, set +// abstract yanchor: YAnchorAuto with get, set + +// [] +// type SceneAxis = +// inherit Axis +// abstract spikesides: bool with get, set +// abstract showbackground: bool with get, set +// abstract backgroundcolor: Color with get, set +// abstract showaxeslabels: bool with get, set + +// [] +// type ShapeLine = +// abstract color: string with get, set +// abstract width: float with get, set +// abstract dash: Dash with get, set + +// [] +// module Shape = +// [] +// type Layer = +// | Below +// | Above + +// [] +// type Type = +// | Rect +// | Circle +// | Line +// | Path + +// [] +// type Xref = +// | X +// | Paper + +// [] +// type Yref = +// | Y +// | Paper + +// [] +// type Shape = +// abstract visible: bool with get, set +// abstract layer: Shape.Layer with get, set +// abstract ``type``: Shape.Type with get, set +// abstract path: string with get, set +// abstract xref: Shape.Xref with get, set +// abstract yref: Shape.Yref with get, set +// abstract x0: Datum with get, set +// abstract y0: Datum with get, set +// abstract x1: Datum with get, set +// abstract y1: Datum with get, set +// abstract fillcolor: string with get, set +// abstract opacity: float with get, set +// abstract line: obj with get, set // ? + +// [] +// type Margin = +// abstract t: float with get, set +// abstract b: float with get, set +// abstract l: float with get, set +// abstract r: float with get, set + +// [] +// type ModeBarDefaultButtons = +// | Lasso2d +// | Select2d +// | SendDataToCloud +// | AutoScale2d +// | Zoom2d +// | Pan2d +// | ZoomIn2d +// | ZoomOut2d +// | ResetScale2d +// | HoverClosestCartesian +// | HoverCompareCartesian +// | Zoom3d +// | Pan3d +// | OrbitRotation +// | TableRotation +// | ResetCameraDefault3d +// | ResetCameraLastSave3d +// | HoverClosest3d +// | ZoomInGeo +// | ZoomOutGeo +// | ResetGeo +// | HoverClosestGeo +// | HoverClosestGl2d +// | HoverClosestPie +// | ToggleHover +// | ToImage +// | ResetViews +// | ToggleSpikelines + +// [] +// type ErrorOptions = +// abstract visible: bool with get, set +// abstract symmetric: bool with get, set +// abstract color: Color with get, set +// abstract thickness: float with get, set +// abstract width: float with get, set +// abstract opacity: float with get, set + +// /// These interfaces are based on attribute descriptions in +// /// https://github.com/plotly/plotly.js/tree/9d6144304308fc3007f0facf2535d38ea3e9b26c/src/transforms +// [] +// type TransformStyle = +// abstract target: U4, ResizeArray> with get, set +// abstract value: obj with get, set + +// [] +// module TransformAggregation = +// [] +// type Func = +// | Count +// | Sum +// | Avg +// | Median +// | Mode +// | Rms +// | Stddev +// | Min +// | Max +// | First +// | Last + +// [] +// type FuncMode = +// | Sample +// | Population + +// [] +// type TransformAggregation = +// abstract target: string with get, set +// abstract func: TransformAggregation.Func option with get, set +// abstract funcmode: TransformAggregation.FuncMode option with get, set +// abstract enabled: bool option with get, set + +// [] +// module Transform = +// [] +// type Type = +// | Aggregate +// | Filter +// | [] GroupBy +// | Sort + +// [] +// type Order = +// | Ascending +// | Descending + +// [] +// type Transform = +// abstract ``type``: Transform.Type with get, set +// abstract enabled: bool with get, set +// abstract target: U4, ResizeArray> with get, set +// abstract operation: string with get, set +// abstract aggregations: ResizeArray with get, set +// abstract preservegaps: bool with get, set +// abstract groups: U3, ResizeArray> with get, set +// abstract nameformat: string with get, set +// abstract styles: ResizeArray with get, set +// abstract value: obj option with get, set +// abstract order: Transform.Order with get, set + +// [] +// module ColorBar = +// [] +// type TitleSide = +// | Right +// | Top +// | Bottom + +// [] +// type SizeMode = +// | Fraction +// | Pixels + +// [] +// type Font = +// /// HTML font family - the typeface that will be applied by the web browser. +// /// The web browser will only be able to apply a font if it is available on the system +// /// which it operates. Provide multiple font families, separated by commas, to indicate +// /// the preference in which to apply fonts if they aren't available on the system. +// /// The plotly service (at https://plot.ly or on-premise) generates images on a server, +// /// where only a select number of fonts are installed and supported. +// /// These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, +// /// *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, +// /// *PT Sans Narrow*, *Raleway*, *Times New Roman*. +// abstract family: string with get, set + +// abstract size: float with get, set +// abstract color: Color with get, set + +// [] +// type ColorBar = +// abstract thicknessmode: SizeMode with get, set +// abstract thickness: float with get, set +// abstract lenmode: SizeMode with get, set +// abstract len: float with get, set +// abstract x: float with get, set +// abstract xanchor: XAnchor with get, set +// abstract xpad: float with get, set +// abstract y: float with get, set +// abstract yanchor: YAnchor with get, set +// abstract ypad: float with get, set +// abstract outlinecolor: Color with get, set +// abstract outlinewidth: float with get, set +// abstract bordercolor: Color with get, set +// abstract borderwidth: Color with get, set +// abstract bgcolor: Color with get, set +// abstract tickmode: TickMode with get, set +// abstract nticks: float with get, set +// abstract tick0: U2 with get, set +// abstract dtick: U2 with get, set +// abstract tickvals: U4, ResizeArray>, ResizeArray>>, 'T []> with get, set +// abstract ticktext: U4, ResizeArray>, ResizeArray>>, 'T []> with get, set +// abstract ticks: Ticks with get, set +// abstract ticklen: float with get, set +// abstract tickwidth: float with get, set +// abstract tickcolor: Color with get, set +// abstract showticklabels: bool with get, set +// abstract tickfont: Font with get, set +// abstract tickangle: float with get, set +// abstract tickformat: string with get, set +// abstract tickformatstops: TickFormatStops with get, set +// abstract tickprefix: string with get, set +// abstract showtickprefix: ShowOptions with get, set +// abstract ticksuffix: string with get, set +// abstract showticksuffix: ShowOptions with get, set +// abstract separatethousands: bool with get, set +// abstract exponentformat: ExponentFormat with get, set +// abstract showexponent: ShowOptions with get, set +// abstract title: string with get, set +// abstract titlefont: Font with get, set +// abstract titleside: ColorBar.TitleSide with get, set +// abstract tickvalssrc: obj option with get, set +// abstract ticktextsrc: obj option with get, set + +// /// Any combination of "x", "y", "z", "text", "name" joined with a "+" OR "all" or "none" or "skip". +// /// examples: "x", "y", "x+y", "x+y+z", "all" +// /// default: "all" +// [] +// type PlotMarker = +// abstract symbol: U2> with get, set +// abstract color: U2> with get, set +// abstract colors: ResizeArray with get, set +// abstract colorscale: ColorScale with get, set +// abstract cauto: bool with get, set +// abstract cmax: float with get, set +// abstract cmin: float with get, set +// abstract autocolorscale: bool with get, set +// abstract reversescale: bool with get, set +// abstract opacity: U2> with get, set +// abstract size: U2> with get, set +// abstract maxdisplayed: float with get, set +// abstract sizeref: float with get, set +// abstract sizemax: float with get, set +// abstract sizemin: float with get, set +// abstract sizemode: MarkerSizeMode with get, set +// abstract showscale: bool with get, set +// abstract line: obj with get, set +// abstract width: float with get, set +// abstract colorbar: ColorBar with get, set +// abstract gradient: Gradient with get, set + +// type ScatterMarker = PlotMarker + +// [] +// type ScatterMarkerLine = +// abstract width: U2> with get, set +// abstract color: Color with get, set +// abstract colorscale: ColorScale with get, set +// abstract cauto: bool with get, set +// abstract cmax: float with get, set +// abstract cmin: float with get, set +// abstract autocolorscale: bool with get, set +// abstract reversescale: bool with get, set + +// [] +// type ScatterLine = +// abstract color: Color with get, set +// abstract width: float with get, set +// abstract dash: Dash with get, set +// abstract shape: LineShape with get, set +// abstract smoothing: float with get, set +// abstract simplify: bool with get, set + +// [] +// type Edits = +// abstract annotationPosition: bool with get, set +// abstract annotationTail: bool with get, set +// abstract annotationText: bool with get, set +// abstract axisTitleText: bool with get, set +// abstract colorbarPosition: bool with get, set +// abstract colorbarTitleText: bool with get, set +// abstract legendPosition: bool with get, set +// abstract legendText: bool with get, set +// abstract shapePosition: bool with get, set +// abstract titleText: bool with get, set + +// [] +// type Icon = +// abstract width: float with get, set +// abstract path: string with get, set +// abstract ascent: float with get, set +// abstract descent: float with get, set + +// [] +// type ModeBarButton = +// /// name / id of the buttons (for tracking) +// abstract name: string with get, set +// /// text that appears while hovering over the button, +// /// enter null, false or '' for no hover text +// abstract title: string with get, set +// /// svg icon object associated with the button +// /// can be linked to Plotly.Icons to use the default plotly icons +// abstract icon: U2 with get, set +// /// icon positioning +// abstract gravity: string option with get, set +// /// click handler associated with the button, a function of +// /// 'gd' (the main graph object) and +// /// 'ev' (the event object) +// abstract click: (HTMLElement * MouseEvent -> unit) with get, set +// /// attribute associated with button, +// /// use this with 'val' to keep track of the state +// abstract attr: string option with get, set +// /// initial 'attr' value, can be a function of gd +// abstract ``val``: obj option with get, set +// /// is the button a toggle button? +// abstract toggle: bool option with get, set + +// [] +// module Config = +// [] +// type DoubleClick = +// | Autosize +// | Reset +// | [] ResetAndAutosize + +// [] +// type DisplayModeBar = Hover + +// [] +// type Config = +// /// override the defaults for the toImageButton +// abstract toImageButtonOptions: Image with get, set + + +// /// no interactivity, for export or image generation +// abstract staticPlot: bool with get, set + + +// /// we can edit titles, move annotations, etc +// abstract editable: bool with get, set + +// abstract edits: Edits with get, set // Partial +// /// DO autosize once regardless of layout.autosize (use default width or height values otherwise) +// abstract autosizable: bool with get, set +// /// set the length of the undo/redo queue +// abstract queueLength: float with get, set +// /// if we DO autosize, do we fill the container or the screen? +// abstract fillFrame: bool with get, set +// /// if we DO autosize, set the frame margins in percents of plot size +// abstract frameMargins: float with get, set +// /// mousewheel or two-finger scroll zooms the plot +// abstract scrollZoom: bool with get, set +// /// double click interaction (false, 'reset', 'autosize' or 'reset+autosize') +// abstract doubleClick: Config.DoubleClick with get, set +// /// new users see some hints about interactivity +// abstract showTips: bool with get, set +// /// enable axis pan/zoom drag handles +// abstract showAxisDragHandles: bool with get, set +// /// enable direct range entry at the pan/zoom drag points (drag handles must be enabled above) +// abstract showAxisRangeEntryBoxes: bool with get, set +// /// link to open this plot in plotly +// abstract showLink: bool with get, set +// /// if we show a link, does it contain data or just link to a plotly file? +// abstract sendData: bool with get, set +// /// text appearing in the sendData link +// abstract linkText: string with get, set +// /// false or function adding source(s) to linkText +// abstract showSources: bool with get, set +// /// display the mode bar (true, false, or 'hover') +// abstract displayModeBar: U2 with get, set +// /// remove mode bar button by name (see ./components/modebar/buttons.js for the list of names) +// abstract modeBarButtonsToRemove: ResizeArray with get, set +// /// add mode bar button using config objects (see ./components/modebar/buttons.js for list of arguments) +// abstract modeBarButtonsToAdd: U2, ResizeArray> with get, set +// /// fully custom mode bar buttons as nested array, where the outer +// /// arrays represents button groups, and the inner arrays have +// /// buttons config objects or names of default buttons +// /// (see ./components/modebar/buttons.js for more info) +// abstract modeBarButtons: U3>, ResizeArray>, obj> with get, set +// /// add the plotly logo on the end of the mode bar +// abstract displaylogo: bool with get, set +// /// increase the pixel ratio for Gl plot images +// abstract plotGlPixelRatio: float with get, set +// /// function to add the background color to a different container +// /// or 'opaque' to ensure there's white behind it +// /// or 'transparent' +// abstract setBackground: (unit -> string) with get, set +// /// URL to topojson files used in geo charts +// abstract topojsonURL: string with get, set +// /// Mapbox access token (required to plot mapbox trace types) +// /// If using an Mapbox Atlas server, set this option to '', +// /// so that plotly.js won't attempt to authenticate to the public Mapbox server. +// abstract mapboxAccessToken: string with get, set +// /// Turn all console logging on or off (errors will be thrown) +// /// This should ONLY be set via Plotly.setPlotConfig +// /// only accepts 0, 1, and 2 +// abstract logging: U2 with get, set +// /// Set global transform to be applied to all traces with no specification needed +// abstract globalTransforms: ResizeArray with get, set +// /// Which localization should we use? Should be a string like 'en' or 'en-US' +// abstract locale: string with get, set +// /// Make the chart responsive to window size +// abstract responsive: bool with get, set + +// [] +// type RangeSlider = +// abstract visible: bool with get, set +// abstract thickness: float with get, set +// abstract range: Datum * Datum with get, set +// abstract borderwidth: float with get, set +// abstract bordercolor: string with get, set +// abstract bgcolor: string with get, set + +// [] +// module RangeSelectorButton = +// [] +// type Step = +// | Second +// | Minute +// | Hour +// | Day +// | Month +// | Year +// | All + +// [] +// type StepMode = +// | Backward +// | [] ToDate + +// [] +// type RangeSelectorButton = +// abstract step: RangeSelectorButton.Step with get, set +// abstract stepmode: RangeSelectorButton.StepMode with get, set +// abstract count: float with get, set +// abstract label: string with get, set + +// [] +// type RangeSelector = +// abstract buttons: RangeSelectorButton [] with get, set // Array> +// abstract visible: bool with get, set +// abstract x: float with get, set +// abstract xanchor: XAnchorAuto with get, set +// abstract y: float with get, set +// abstract yanchor: YAnchorAuto with get, set +// abstract activecolor: string with get, set +// abstract borderwidth: float with get, set + +// [] +// type Camera = +// abstract up: Point with get, set // Partial +// abstract center: Point with get, set // Partial +// abstract eye: Point with get, set // Partial + +// [] +// type Label = +// /// Sets the background color of all hover labels on graph. +// abstract bgcolor: string with get, set +// /// Sets the border color of all hover labels on graph. +// abstract bordercolor: string with get, set +// /// Sets the default hover label font used by all traces on the graph. +// abstract font: Font with get, set // Partial + +// [] +// module HoverLabel = +// [] +// type Align = +// | Left +// | Right +// | Auto + +// [] +// type HoverLabel = +// inherit Label +// /// Sets the horizontal alignment of the text content within hover label box. +// abstract align: HoverLabel.Align with get, set +// /// Sets the default length (in number of characters) (default 15) of the trace name +// /// in the hover labels for all traces. +// /// -1 shows the whole name regardless of length. +// abstract namelength: float with get, set + +// [] +// module Image = +// [] +// type Layer = +// | Below +// | Above + +// [] +// type Sizing = +// | Fill +// | Contain +// | Stretch + +// [] +// type XAnchor = +// | Left +// | Center +// | Right + +// [] +// type YAnchor = +// | Top +// | Middle +// | Bottom + +// [] +// type Xref = +// | X +// | Paper + +// [] +// type Yref = +// | Y +// | Paper + +// [] +// type Image = +// abstract visible: bool with get, set +// abstract source: string with get, set +// abstract layer: Image.Layer with get, set +// abstract sizex: float with get, set +// abstract sizey: float with get, set +// abstract sizing: Image.Sizing with get, set +// abstract opacity: float with get, set +// abstract x: U2 with get, set +// abstract y: U2 with get, set +// abstract xanchor: Image.XAnchor with get, set +// abstract yanchor: Image.YAnchor with get, set +// abstract xref: Image.Xref with get, set +// abstract yref: Image.Yref with get, set + +// [] +// [] +// type SceneAspectMode = +// | Auto +// | Cube +// | Data +// | Manual + +// [] +// [] +// type SceneDragMode = +// | Orbit +// | Turntable +// | Zoom +// | Pan + +// [] +// [] +// type SceneHoverMode = Closest + +// [] +// type Domain = +// abstract x: ResizeArray with get, set +// abstract y: ResizeArray with get, set + +// [] +// type Scene = +// abstract bgcolor: string with get, set +// abstract camera: Camera with get, set // Partial +// abstract domain: Domain with get, set // Partial +// abstract aspectmode: SceneAspectMode with get, set +// abstract aspectratio: Point with get, set // Partial +// abstract xaxis: SceneAxis with get, set // Partial +// abstract yaxis: SceneAxis with get, set // Partial +// abstract zaxis: SceneAxis with get, set // Partial +// abstract dragmode: U2 with get, set +// abstract hovermode: U2 with get, set +// abstract annotations: U2 with get, set // Partial | Array> +// abstract captureevents: bool with get, set + +// [] +// module Padding = +// [] +// type EditType = ArrayDraw + +// [] +// type Padding = +// /// The amount of padding (in px) along the top of the component. +// abstract t: float with get, set + +// /// The amount of padding (in px) on the right side of the component. +// abstract r: float with get, set + +// /// The amount of padding (in px) along the bottom of the component. +// abstract b: float with get, set + +// /// The amount of padding (in px) on the left side of the component. +// abstract l: float with get, set +// abstract editType: Padding.EditType with get, set + +// [] +// module SliderStep = +// [] +// type Method = +// | Animate +// | Relayout +// | Restyle +// | Skip +// | Update + +// [] +// type SliderStep = +// /// Determines whether or not this step is included in the slider. +// abstract visible: bool with get, set +// /// Sets the Plotly method to be called when the slider value is changed. +// /// If the `skip` method is used, the API slider will function as normal +// /// but will perform no API calls and will not bind automatically to state +// /// updates. This may be used to create a component interface and attach to +// /// slider events manually via JavaScript. +// abstract method: SliderStep.Method with get, set +// /// Sets the arguments values to be passed to the Plotly +// /// method set in `method` on slide. +// abstract args: ResizeArray with get, set +// /// Sets the text label to appear on the slider +// abstract label: string with get, set +// /// Sets the value of the slider step, used to refer to the step programatically. +// /// Defaults to the slider label if not provided. +// abstract value: string with get, set +// /// When true, the API method is executed. When false, all other behaviors are the same +// /// and command execution is skipped. This may be useful when hooking into, for example, +// /// the `plotly_sliderchange` method and executing the API command manually without losing +// /// the benefit of the slider automatically binding to the state of the plot through the +// /// specification of `method` and `args`. +// abstract execute: bool with get, set + +// [] +// type SliderValue = +// /// Shows the currently-selected value above the slider. +// abstract visible: bool with get, set +// /// The alignment of the value readout relative to the length of the slider. +// abstract xanchor: XAnchor with get, set +// /// The amount of space, in pixels, between the current value label +// /// and the slider. +// abstract offset: float with get, set +// /// When currentvalue.visible is true, this sets the prefix of the label. +// abstract prefix: string with get, set +// /// When currentvalue.visible is true, this sets the suffix of the label. +// abstract suffix: string with get, set +// /// Sets the font of the current value label text. +// abstract font: Font with get, set // Partial + +// [] +// type Slider = +// /// Determines whether or not the slider is visible. +// abstract visible: bool with get, set +// /// Determines which button (by index starting from 0) is +// /// considered active. +// abstract active: float with get, set +// abstract steps: SliderStep [] with get, set // Array> +// /// Determines whether this slider length +// /// is set in units of plot *fraction* or in *pixels. +// /// Use `len` to set the value. +// abstract lenmode: SizeMode with get, set +// /// Sets the length of the slider +// /// This measure excludes the padding of both ends. +// /// That is, the slider's length is this length minus the +// /// padding on both ends. +// abstract len: float with get, set +// /// Sets the x position (in normalized coordinates) of the slider. +// abstract x: float with get, set +// /// Sets the y position (in normalized coordinates) of the slider. +// abstract y: float with get, set +// /// Set the padding of the slider component along each side. +// abstract pad: Padding with get, set // Partial +// /// Sets the slider's horizontal position anchor. +// /// This anchor binds the `x` position to the *left*, *center* +// /// or *right* of the range selector. +// abstract xanchor: XAnchorAuto with get, set +// /// Sets the slider's vertical position anchor +// /// This anchor binds the `y` position to the *top*, *middle* +// /// or *bottom* of the range selector. +// abstract yanchor: YAnchorAuto with get, set +// abstract transition: Transition with get, set +// abstract currentvalue: SliderValue with get, set +// /// Sets the font of the slider step labels. +// abstract font: Font with get, set +// /// Sets the background color of the slider grip +// /// while dragging. +// abstract activebgcolor: Color with get, set +// /// Sets the background color of the slider. +// abstract bgcolor: Color with get, set +// /// Sets the color of the border enclosing the slider. +// abstract bordercolor: Color with get, set +// /// Sets the width (in px) of the border enclosing the slider. +// abstract borderwidth: float with get, set +// /// Sets the length in pixels of step tick marks +// abstract ticklen: float with get, set +// /// Sets the color of the border enclosing the slider. +// abstract tickcolor: Color with get, set +// /// Sets the tick width (in px). +// abstract tickwidth: float with get, set +// /// Sets the length in pixels of minor step tick marks +// abstract minorticklen: float with get, set + +// [] +// type LegendClickEvent = +// abstract event: MouseEvent with get, set +// abstract node: HTMLElement with get, set +// abstract curveNumber: float with get, set +// abstract expandedIndex: float with get, set +// abstract data: ResizeArray with get, set +// abstract layout: Layout with get, set +// abstract frames: ResizeArray with get, set +// abstract config: Config with get, set +// abstract fullData: ResizeArray with get, set //what? +// abstract fullLayout: Layout with get, set //what? + +// [] +// type SliderChangeEvent = +// abstract slider: Slider with get, set +// abstract step: SliderStep with get, set +// abstract interaction: bool with get, set +// abstract previousActive: float with get, set + +// [] +// type SliderStartEvent = +// abstract slider: Slider with get, set + +// [] +// type SliderEndEvent = +// abstract slider: Slider with get, set +// abstract step: SliderStep with get, set + +// [] +// type BeforePlotEvent = +// abstract data: ResizeArray with get, set +// abstract layout: Layout with get, set +// abstract config: Layout with get, set diff --git a/src/Feliz.Plotly/Colors.fs b/src/Feliz.Plotly/Colors.fs new file mode 100644 index 0000000..8e0e346 --- /dev/null +++ b/src/Feliz.Plotly/Colors.fs @@ -0,0 +1,193 @@ +namespace Feliz.Plotly + +type ColorScale = + /// Scales colors in order equally + | Sequential + /// Scales colors in reverse order equally + | SequentialMinus + /// Scales color around divergence point + | Diverging of float + +module ColorScales = + open Feliz.colors + + /// TODO + let custom (scale: ColorScale) (colors: string list) = + match scale with + | Sequential -> () + | SequentialMinus -> () + | Diverging mid -> () + + /// How to represent float,string array in F#? + let greys = + [ rgb (0, 0, 0) + rgb (255, 255, 255) ] + + let ylGnBu = + [ rgb (8, 29, 88) + rgb (37, 52, 148) + rgb (34, 94, 168) + rgb (29, 145, 192) + rgb (65, 182, 196) + rgb (127, 205, 187) + rgb (199, 233, 180) + rgb (237, 248, 217) + rgb (255, 255, 217) ] + + let greens = + [ rgb (0, 68, 27) + rgb (0, 109, 44) + rgb (35, 139, 69) + rgb (65, 171, 93) + rgb (116, 196, 118) + rgb (161, 217, 155) + rgb (199, 233, 192) + rgb (229, 245, 224) + rgb (247, 252, 245) ] + + let ylOrRd = + [ rgb (128, 0, 38) + rgb (189, 0, 38) + rgb (227, 26, 28) + rgb (252, 78, 42) + rgb (253, 141, 60) + rgb (254, 178, 76) + rgb (254, 217, 118) + rgb (255, 237, 160) + rgb (255, 255, 204) ] + + let bluered = + [ rgb (0, 0, 255) + rgb (255, 0, 0) ] + + /// modified RdBu based on + /// + /// http://www.kennethmoreland.com/color-maps/ + let rdBu = + [ rgb (5, 10, 172) + rgb (106, 137, 247) + rgb (190, 190, 190) + rgb (220, 170, 132) + rgb (230, 145, 90) + rgb (178, 10, 28) ] + + let reds = + [ rgb (220, 220, 220) + rgb (245, 195, 157) + rgb (245, 160, 105) + rgb (178, 10, 28) ] + + let blues = + [ rgb (5, 10, 172) + rgb (40, 60, 190) + rgb (70, 100, 245) + rgb (90, 120, 245) + rgb (106, 137, 247) + rgb (220, 220, 220) ] + + let picnic = + [ rgb (0, 0, 255) + rgb (51, 153, 255) + rgb (102, 204, 255) + rgb (153, 204, 255) + rgb (204, 204, 255) + rgb (255, 255, 255) + rgb (255, 204, 255) + rgb (255, 153, 255) + rgb (255, 102, 204) + rgb (255, 102, 102) + rgb (255, 0, 0) ] + + let rainbow = + [ rgb (150, 0, 90) + rgb (0, 0, 200) + rgb (0, 25, 255) + rgb (0, 152, 255) + rgb (44, 255, 150) + rgb (151, 255, 0) + rgb (255, 234, 0) + rgb (255, 111, 0) + rgb (255, 0, 0) ] + + let portland = + [ rgb (12, 51, 131) + rgb (10, 136, 186) + rgb (242, 211, 56) + rgb (242, 143, 56) + rgb (217, 30, 30) ] + + let jet = + [ rgb (0, 0, 131) + rgb (0, 60, 170) + rgb (5, 255, 255) + rgb (255, 255, 0) + rgb (250, 0, 0) + rgb (128, 0, 0) ] + + let hot = + [ rgb (0, 0, 0) + rgb (230, 0, 0) + rgb (255, 210, 0) + rgb (255, 255, 255) ] + + let blackbody = + [ rgb (0, 0, 0) + rgb (230, 0, 0) + rgb (230, 210, 0) + rgb (255, 255, 255) + rgb (160, 200, 255) ] + + let earth = + [ rgb (0, 0, 130) + rgb (0, 180, 180) + rgb (40, 210, 40) + rgb (230, 230, 50) + rgb (120, 70, 20) + rgb (255, 255, 255) ] + + let electric = + [ rgb (0, 0, 0) + rgb (30, 0, 100) + rgb (120, 0, 100) + rgb (160, 90, 0) + rgb (230, 200, 0) + rgb (255, 250, 220) ] + + let viridis = + [ "#440154" + "#48186a" + "#472d7b" + "#424086" + "#3b528b" + "#33638d" + "#2c728e" + "#26828e" + "#21918c" + "#1fa088" + "#28ae80" + "#3fbc73" + "#5ec962" + "#84d44b" + "#addc30" + "#d8e219" + "#fde725" ] + + let cividis = + [ rgb (0, 32, 76) + rgb (0, 42, 102) + rgb (0, 52, 110) + rgb (39, 63, 108) + rgb (60, 74, 107) + rgb (76, 85, 107) + rgb (91, 95, 109) + rgb (104, 106, 112) + rgb (117, 117, 117) + rgb (131, 129, 120) + rgb (146, 140, 120) + rgb (161, 152, 118) + rgb (176, 165, 114) + rgb (192, 177, 109) + rgb (209, 191, 102) + rgb (225, 204, 92) + rgb (243, 219, 79) + rgb (255, 233, 69) ] diff --git a/src/Feliz.Plotly/Feliz.Plotly.fsproj b/src/Feliz.Plotly/Feliz.Plotly.fsproj new file mode 100644 index 0000000..3a15369 --- /dev/null +++ b/src/Feliz.Plotly/Feliz.Plotly.fsproj @@ -0,0 +1,32 @@ + + + + Library + netcoreapp3.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Feliz.Plotly/Interop.fs b/src/Feliz.Plotly/Interop.fs new file mode 100644 index 0000000..8c4693c --- /dev/null +++ b/src/Feliz.Plotly/Interop.fs @@ -0,0 +1,84 @@ +namespace Feliz.Plotly + +(*//////////////////////////////// +/// THIS FILE IS AUTO-GENERATED // +////////////////////////////////*) + +[] +module Interop = + let inline mkPlotAttr (key: string) (value: obj) : IPlotProperty = unbox (key, value) + let inline mkConfigAttr (key: string) (value: obj) : IConfigProperty = unbox (key, value) + let inline mkLayoutAttr (key: string) (value: obj) : ILayoutProperty = unbox (key, value) + let inline mkDataAttr (key: string) (value: obj) : IDataProperty = unbox (key, value) + let inline mkEditsAttr (key: string) (value: obj) : IEditsProperty = unbox (key, value) + let inline mkFontAttr (key: string) (value: obj) : IFontProperty = unbox (key, value) + let inline mkTitleAttr (key: string) (value: obj) : ITitleProperty = unbox (key, value) + let inline mkMarginAttr (key: string) (value: obj) : IMarginProperty = unbox (key, value) + let inline mkModebarAttr (key: string) (value: obj) : IModebarProperty = unbox (key, value) + let inline mkTransitionAttr (key: string) (value: obj) : ITransitionProperty = unbox (key, value) + let inline mkHoverlabelAttr (key: string) (value: obj) : IHoverlabelProperty = unbox (key, value) + let inline mkGridAttr (key: string) (value: obj) : IGridProperty = unbox (key, value) + let inline mkXaxisAttr (key: string) (value: obj) : IXaxisProperty = unbox (key, value) + let inline mkYaxisAttr (key: string) (value: obj) : IYaxisProperty = unbox (key, value) + let inline mkTernaryAttr (key: string) (value: obj) : ITernaryProperty = unbox (key, value) + let inline mkSceneAttr (key: string) (value: obj) : ISceneProperty = unbox (key, value) + let inline mkGeoAttr (key: string) (value: obj) : IGeoProperty = unbox (key, value) + let inline mkMapboxAttr (key: string) (value: obj) : IMapboxProperty = unbox (key, value) + let inline mkPolarAttr (key: string) (value: obj) : IPolarProperty = unbox (key, value) + let inline mkRadialaxisAttr (key: string) (value: obj) : IRadialaxisProperty = unbox (key, value) + let inline mkAngularaxisAttr (key: string) (value: obj) : IAngularaxisProperty = unbox (key, value) + let inline mkEditTypeAttr (key: string) (value: obj) : IEditTypeProperty = unbox (key, value) + let inline mkLegendAttr (key: string) (value: obj) : ILegendProperty = unbox (key, value) + let inline mkAnnotationsAttr (key: string) (value: obj) : IAnnotationsProperty = unbox (key, value) + let inline mkShapesAttr (key: string) (value: obj) : IShapesProperty = unbox (key, value) + let inline mkImagesAttr (key: string) (value: obj) : IImagesProperty = unbox (key, value) + let inline mkUpdatemenusAttr (key: string) (value: obj) : IUpdatemenusProperty = unbox (key, value) + let inline mkSlidersAttr (key: string) (value: obj) : ISlidersProperty = unbox (key, value) + let inline mkColorscaleAttr (key: string) (value: obj) : IColorscaleProperty = unbox (key, value) + let inline mkColoraxisAttr (key: string) (value: obj) : IColoraxisProperty = unbox (key, value) + let inline mkScatterAttr (key: string) (value: obj) : IScatterProperty = unbox (key, value) + let inline mkBarAttr (key: string) (value: obj) : IBarProperty = unbox (key, value) + let inline mkBoxAttr (key: string) (value: obj) : IBoxProperty = unbox (key, value) + let inline mkHeatmapAttr (key: string) (value: obj) : IHeatmapProperty = unbox (key, value) + let inline mkHistogramAttr (key: string) (value: obj) : IHistogramProperty = unbox (key, value) + let inline mkHistogram2dAttr (key: string) (value: obj) : IHistogram2dProperty = unbox (key, value) + let inline mkHistogram2dcontourAttr (key: string) (value: obj) : IHistogram2dcontourProperty = unbox (key, value) + let inline mkContourAttr (key: string) (value: obj) : IContourProperty = unbox (key, value) + let inline mkScatterternaryAttr (key: string) (value: obj) : IScatterternaryProperty = unbox (key, value) + let inline mkViolinAttr (key: string) (value: obj) : IViolinProperty = unbox (key, value) + let inline mkFunnelAttr (key: string) (value: obj) : IFunnelProperty = unbox (key, value) + let inline mkWaterfallAttr (key: string) (value: obj) : IWaterfallProperty = unbox (key, value) + let inline mkPieAttr (key: string) (value: obj) : IPieProperty = unbox (key, value) + let inline mkSunburstAttr (key: string) (value: obj) : ISunburstProperty = unbox (key, value) + let inline mkTreemapAttr (key: string) (value: obj) : ITreemapProperty = unbox (key, value) + let inline mkFunnelareaAttr (key: string) (value: obj) : IFunnelareaProperty = unbox (key, value) + let inline mkScatter3dAttr (key: string) (value: obj) : IScatter3dProperty = unbox (key, value) + let inline mkSurfaceAttr (key: string) (value: obj) : ISurfaceProperty = unbox (key, value) + let inline mkIsosurfaceAttr (key: string) (value: obj) : IIsosurfaceProperty = unbox (key, value) + let inline mkVolumeAttr (key: string) (value: obj) : IVolumeProperty = unbox (key, value) + let inline mkMesh3dAttr (key: string) (value: obj) : IMesh3dProperty = unbox (key, value) + let inline mkConeAttr (key: string) (value: obj) : IConeProperty = unbox (key, value) + let inline mkStreamtubeAttr (key: string) (value: obj) : IStreamtubeProperty = unbox (key, value) + let inline mkScattergeoAttr (key: string) (value: obj) : IScattergeoProperty = unbox (key, value) + let inline mkChoroplethAttr (key: string) (value: obj) : IChoroplethProperty = unbox (key, value) + let inline mkScatterglAttr (key: string) (value: obj) : IScatterglProperty = unbox (key, value) + let inline mkSplomAttr (key: string) (value: obj) : ISplomProperty = unbox (key, value) + let inline mkPointcloudAttr (key: string) (value: obj) : IPointcloudProperty = unbox (key, value) + let inline mkHeatmapglAttr (key: string) (value: obj) : IHeatmapglProperty = unbox (key, value) + let inline mkParcoordsAttr (key: string) (value: obj) : IParcoordsProperty = unbox (key, value) + let inline mkParcatsAttr (key: string) (value: obj) : IParcatsProperty = unbox (key, value) + let inline mkScattermapboxAttr (key: string) (value: obj) : IScattermapboxProperty = unbox (key, value) + let inline mkChoroplethmapboxAttr (key: string) (value: obj) : IChoroplethmapboxProperty = unbox (key, value) + let inline mkDensitymapboxAttr (key: string) (value: obj) : IDensitymapboxProperty = unbox (key, value) + let inline mkSankeyAttr (key: string) (value: obj) : ISankeyProperty = unbox (key, value) + let inline mkIndicatorAttr (key: string) (value: obj) : IIndicatorProperty = unbox (key, value) + let inline mkTableAttr (key: string) (value: obj) : ITableProperty = unbox (key, value) + let inline mkCarpetAttr (key: string) (value: obj) : ICarpetProperty = unbox (key, value) + let inline mkScattercarpetAttr (key: string) (value: obj) : IScattercarpetProperty = unbox (key, value) + let inline mkContourcarpetAttr (key: string) (value: obj) : IContourcarpetProperty = unbox (key, value) + let inline mkOhlcAttr (key: string) (value: obj) : IOhlcProperty = unbox (key, value) + let inline mkCandlestickAttr (key: string) (value: obj) : ICandlestickProperty = unbox (key, value) + let inline mkScatterpolarAttr (key: string) (value: obj) : IScatterpolarProperty = unbox (key, value) + let inline mkScatterpolarglAttr (key: string) (value: obj) : IScatterpolarglProperty = unbox (key, value) + let inline mkBarpolarAttr (key: string) (value: obj) : IBarpolarProperty = unbox (key, value) + let inline mkAreaAttr (key: string) (value: obj) : IAreaProperty = unbox (key, value) diff --git a/src/Feliz.Plotly/Plotly.fs b/src/Feliz.Plotly/Plotly.fs new file mode 100644 index 0000000..3d242bb --- /dev/null +++ b/src/Feliz.Plotly/Plotly.fs @@ -0,0 +1,220 @@ +namespace Feliz.Plotly + +(*//////////////////////////////// +/// THIS FILE IS AUTO-GENERATED // +////////////////////////////////*) + +open Browser.Types +open Fable.Core +open Fable.Core.JsInterop +open Fable.React +open Feliz + +[] +type Plot = + static member inline config (properties: #IConfigProperty list) = Interop.mkConfigAttr "config" (createObj !!properties) + static member config (properties: (bool * IConfigProperty list) list) = Interop.mkConfigAttr "config" (properties |> Bindings.Internal.withConditionals) + static member inline layout (properties: #ILayoutProperty list) = Interop.mkLayoutAttr "layout" (createObj !!properties) + static member layout (properties: (bool * ILayoutProperty list) list) = Interop.mkLayoutAttr "layout" (properties |> Bindings.Internal.withConditionals) + static member inline data (properties: #IDataProperty list) = Interop.mkDataAttr "data" (createObj !!properties) + static member data (properties: (bool * IDataProperty list) list) = Interop.mkDataAttr "data" (properties |> Bindings.Internal.withConditionals) + static member inline edits (properties: #IEditsProperty list) = Interop.mkEditsAttr "edits" (createObj !!properties) + static member edits (properties: (bool * IEditsProperty list) list) = Interop.mkEditsAttr "edits" (properties |> Bindings.Internal.withConditionals) + static member inline font (properties: #IFontProperty list) = Interop.mkFontAttr "font" (createObj !!properties) + static member font (properties: (bool * IFontProperty list) list) = Interop.mkFontAttr "font" (properties |> Bindings.Internal.withConditionals) + static member inline title (properties: #ITitleProperty list) = Interop.mkTitleAttr "title" (createObj !!properties) + static member title (properties: (bool * ITitleProperty list) list) = Interop.mkTitleAttr "title" (properties |> Bindings.Internal.withConditionals) + static member inline margin (properties: #IMarginProperty list) = Interop.mkMarginAttr "margin" (createObj !!properties) + static member margin (properties: (bool * IMarginProperty list) list) = Interop.mkMarginAttr "margin" (properties |> Bindings.Internal.withConditionals) + static member inline modebar (properties: #IModebarProperty list) = Interop.mkModebarAttr "modebar" (createObj !!properties) + static member modebar (properties: (bool * IModebarProperty list) list) = Interop.mkModebarAttr "modebar" (properties |> Bindings.Internal.withConditionals) + static member inline transition (properties: #ITransitionProperty list) = Interop.mkTransitionAttr "transition" (createObj !!properties) + static member transition (properties: (bool * ITransitionProperty list) list) = Interop.mkTransitionAttr "transition" (properties |> Bindings.Internal.withConditionals) + static member inline hoverlabel (properties: #IHoverlabelProperty list) = Interop.mkHoverlabelAttr "hoverlabel" (createObj !!properties) + static member hoverlabel (properties: (bool * IHoverlabelProperty list) list) = Interop.mkHoverlabelAttr "hoverlabel" (properties |> Bindings.Internal.withConditionals) + static member inline grid (properties: #IGridProperty list) = Interop.mkGridAttr "grid" (createObj !!properties) + static member grid (properties: (bool * IGridProperty list) list) = Interop.mkGridAttr "grid" (properties |> Bindings.Internal.withConditionals) + static member inline xaxis (properties: #IXaxisProperty list) = Interop.mkXaxisAttr "xaxis" (createObj !!properties) + static member xaxis (properties: (bool * IXaxisProperty list) list) = Interop.mkXaxisAttr "xaxis" (properties |> Bindings.Internal.withConditionals) + static member inline yaxis (properties: #IYaxisProperty list) = Interop.mkYaxisAttr "yaxis" (createObj !!properties) + static member yaxis (properties: (bool * IYaxisProperty list) list) = Interop.mkYaxisAttr "yaxis" (properties |> Bindings.Internal.withConditionals) + static member inline ternary (properties: #ITernaryProperty list) = Interop.mkTernaryAttr "ternary" (createObj !!properties) + static member ternary (properties: (bool * ITernaryProperty list) list) = Interop.mkTernaryAttr "ternary" (properties |> Bindings.Internal.withConditionals) + static member inline scene (properties: #ISceneProperty list) = Interop.mkSceneAttr "scene" (createObj !!properties) + static member scene (properties: (bool * ISceneProperty list) list) = Interop.mkSceneAttr "scene" (properties |> Bindings.Internal.withConditionals) + static member inline geo (properties: #IGeoProperty list) = Interop.mkGeoAttr "geo" (createObj !!properties) + static member geo (properties: (bool * IGeoProperty list) list) = Interop.mkGeoAttr "geo" (properties |> Bindings.Internal.withConditionals) + static member inline mapbox (properties: #IMapboxProperty list) = Interop.mkMapboxAttr "mapbox" (createObj !!properties) + static member mapbox (properties: (bool * IMapboxProperty list) list) = Interop.mkMapboxAttr "mapbox" (properties |> Bindings.Internal.withConditionals) + static member inline polar (properties: #IPolarProperty list) = Interop.mkPolarAttr "polar" (createObj !!properties) + static member polar (properties: (bool * IPolarProperty list) list) = Interop.mkPolarAttr "polar" (properties |> Bindings.Internal.withConditionals) + static member inline radialaxis (properties: #IRadialaxisProperty list) = Interop.mkRadialaxisAttr "radialaxis" (createObj !!properties) + static member radialaxis (properties: (bool * IRadialaxisProperty list) list) = Interop.mkRadialaxisAttr "radialaxis" (properties |> Bindings.Internal.withConditionals) + static member inline angularaxis (properties: #IAngularaxisProperty list) = Interop.mkAngularaxisAttr "angularaxis" (createObj !!properties) + static member angularaxis (properties: (bool * IAngularaxisProperty list) list) = Interop.mkAngularaxisAttr "angularaxis" (properties |> Bindings.Internal.withConditionals) + static member inline editType (properties: #IEditTypeProperty list) = Interop.mkEditTypeAttr "editType" (createObj !!properties) + static member editType (properties: (bool * IEditTypeProperty list) list) = Interop.mkEditTypeAttr "editType" (properties |> Bindings.Internal.withConditionals) + static member inline legend (properties: #ILegendProperty list) = Interop.mkLegendAttr "legend" (createObj !!properties) + static member legend (properties: (bool * ILegendProperty list) list) = Interop.mkLegendAttr "legend" (properties |> Bindings.Internal.withConditionals) + static member inline annotations (properties: #IAnnotationsProperty list) = Interop.mkAnnotationsAttr "annotations" (createObj !!properties) + static member annotations (properties: (bool * IAnnotationsProperty list) list) = Interop.mkAnnotationsAttr "annotations" (properties |> Bindings.Internal.withConditionals) + static member inline shapes (properties: #IShapesProperty list) = Interop.mkShapesAttr "shapes" (createObj !!properties) + static member shapes (properties: (bool * IShapesProperty list) list) = Interop.mkShapesAttr "shapes" (properties |> Bindings.Internal.withConditionals) + static member inline images (properties: #IImagesProperty list) = Interop.mkImagesAttr "images" (createObj !!properties) + static member images (properties: (bool * IImagesProperty list) list) = Interop.mkImagesAttr "images" (properties |> Bindings.Internal.withConditionals) + static member inline updatemenus (properties: #IUpdatemenusProperty list) = Interop.mkUpdatemenusAttr "updatemenus" (createObj !!properties) + static member updatemenus (properties: (bool * IUpdatemenusProperty list) list) = Interop.mkUpdatemenusAttr "updatemenus" (properties |> Bindings.Internal.withConditionals) + static member inline sliders (properties: #ISlidersProperty list) = Interop.mkSlidersAttr "sliders" (createObj !!properties) + static member sliders (properties: (bool * ISlidersProperty list) list) = Interop.mkSlidersAttr "sliders" (properties |> Bindings.Internal.withConditionals) + static member inline colorscale (properties: #IColorscaleProperty list) = Interop.mkColorscaleAttr "colorscale" (createObj !!properties) + static member colorscale (properties: (bool * IColorscaleProperty list) list) = Interop.mkColorscaleAttr "colorscale" (properties |> Bindings.Internal.withConditionals) + static member inline coloraxis (properties: #IColoraxisProperty list) = Interop.mkColoraxisAttr "coloraxis" (createObj !!properties) + static member coloraxis (properties: (bool * IColoraxisProperty list) list) = Interop.mkColoraxisAttr "coloraxis" (properties |> Bindings.Internal.withConditionals) + static member inline scatter (properties: #IScatterProperty list) = Interop.mkScatterAttr "scatter" (createObj !!properties) + static member scatter (properties: (bool * IScatterProperty list) list) = Interop.mkScatterAttr "scatter" (properties |> Bindings.Internal.withConditionals) + static member inline bar (properties: #IBarProperty list) = Interop.mkBarAttr "bar" (createObj !!properties) + static member bar (properties: (bool * IBarProperty list) list) = Interop.mkBarAttr "bar" (properties |> Bindings.Internal.withConditionals) + static member inline box (properties: #IBoxProperty list) = Interop.mkBoxAttr "box" (createObj !!properties) + static member box (properties: (bool * IBoxProperty list) list) = Interop.mkBoxAttr "box" (properties |> Bindings.Internal.withConditionals) + static member inline heatmap (properties: #IHeatmapProperty list) = Interop.mkHeatmapAttr "heatmap" (createObj !!properties) + static member heatmap (properties: (bool * IHeatmapProperty list) list) = Interop.mkHeatmapAttr "heatmap" (properties |> Bindings.Internal.withConditionals) + static member inline histogram (properties: #IHistogramProperty list) = Interop.mkHistogramAttr "histogram" (createObj !!properties) + static member histogram (properties: (bool * IHistogramProperty list) list) = Interop.mkHistogramAttr "histogram" (properties |> Bindings.Internal.withConditionals) + static member inline histogram2d (properties: #IHistogram2dProperty list) = Interop.mkHistogram2dAttr "histogram2d" (createObj !!properties) + static member histogram2d (properties: (bool * IHistogram2dProperty list) list) = Interop.mkHistogram2dAttr "histogram2d" (properties |> Bindings.Internal.withConditionals) + static member inline histogram2dcontour (properties: #IHistogram2dcontourProperty list) = Interop.mkHistogram2dcontourAttr "histogram2dcontour" (createObj !!properties) + static member histogram2dcontour (properties: (bool * IHistogram2dcontourProperty list) list) = Interop.mkHistogram2dcontourAttr "histogram2dcontour" (properties |> Bindings.Internal.withConditionals) + static member inline contour (properties: #IContourProperty list) = Interop.mkContourAttr "contour" (createObj !!properties) + static member contour (properties: (bool * IContourProperty list) list) = Interop.mkContourAttr "contour" (properties |> Bindings.Internal.withConditionals) + static member inline scatterternary (properties: #IScatterternaryProperty list) = Interop.mkScatterternaryAttr "scatterternary" (createObj !!properties) + static member scatterternary (properties: (bool * IScatterternaryProperty list) list) = Interop.mkScatterternaryAttr "scatterternary" (properties |> Bindings.Internal.withConditionals) + static member inline violin (properties: #IViolinProperty list) = Interop.mkViolinAttr "violin" (createObj !!properties) + static member violin (properties: (bool * IViolinProperty list) list) = Interop.mkViolinAttr "violin" (properties |> Bindings.Internal.withConditionals) + static member inline funnel (properties: #IFunnelProperty list) = Interop.mkFunnelAttr "funnel" (createObj !!properties) + static member funnel (properties: (bool * IFunnelProperty list) list) = Interop.mkFunnelAttr "funnel" (properties |> Bindings.Internal.withConditionals) + static member inline waterfall (properties: #IWaterfallProperty list) = Interop.mkWaterfallAttr "waterfall" (createObj !!properties) + static member waterfall (properties: (bool * IWaterfallProperty list) list) = Interop.mkWaterfallAttr "waterfall" (properties |> Bindings.Internal.withConditionals) + static member inline pie (properties: #IPieProperty list) = Interop.mkPieAttr "pie" (createObj !!properties) + static member pie (properties: (bool * IPieProperty list) list) = Interop.mkPieAttr "pie" (properties |> Bindings.Internal.withConditionals) + static member inline sunburst (properties: #ISunburstProperty list) = Interop.mkSunburstAttr "sunburst" (createObj !!properties) + static member sunburst (properties: (bool * ISunburstProperty list) list) = Interop.mkSunburstAttr "sunburst" (properties |> Bindings.Internal.withConditionals) + static member inline treemap (properties: #ITreemapProperty list) = Interop.mkTreemapAttr "treemap" (createObj !!properties) + static member treemap (properties: (bool * ITreemapProperty list) list) = Interop.mkTreemapAttr "treemap" (properties |> Bindings.Internal.withConditionals) + static member inline funnelarea (properties: #IFunnelareaProperty list) = Interop.mkFunnelareaAttr "funnelarea" (createObj !!properties) + static member funnelarea (properties: (bool * IFunnelareaProperty list) list) = Interop.mkFunnelareaAttr "funnelarea" (properties |> Bindings.Internal.withConditionals) + static member inline scatter3d (properties: #IScatter3dProperty list) = Interop.mkScatter3dAttr "scatter3d" (createObj !!properties) + static member scatter3d (properties: (bool * IScatter3dProperty list) list) = Interop.mkScatter3dAttr "scatter3d" (properties |> Bindings.Internal.withConditionals) + static member inline surface (properties: #ISurfaceProperty list) = Interop.mkSurfaceAttr "surface" (createObj !!properties) + static member surface (properties: (bool * ISurfaceProperty list) list) = Interop.mkSurfaceAttr "surface" (properties |> Bindings.Internal.withConditionals) + static member inline isosurface (properties: #IIsosurfaceProperty list) = Interop.mkIsosurfaceAttr "isosurface" (createObj !!properties) + static member isosurface (properties: (bool * IIsosurfaceProperty list) list) = Interop.mkIsosurfaceAttr "isosurface" (properties |> Bindings.Internal.withConditionals) + static member inline volume (properties: #IVolumeProperty list) = Interop.mkVolumeAttr "volume" (createObj !!properties) + static member volume (properties: (bool * IVolumeProperty list) list) = Interop.mkVolumeAttr "volume" (properties |> Bindings.Internal.withConditionals) + static member inline mesh3d (properties: #IMesh3dProperty list) = Interop.mkMesh3dAttr "mesh3d" (createObj !!properties) + static member mesh3d (properties: (bool * IMesh3dProperty list) list) = Interop.mkMesh3dAttr "mesh3d" (properties |> Bindings.Internal.withConditionals) + static member inline cone (properties: #IConeProperty list) = Interop.mkConeAttr "cone" (createObj !!properties) + static member cone (properties: (bool * IConeProperty list) list) = Interop.mkConeAttr "cone" (properties |> Bindings.Internal.withConditionals) + static member inline streamtube (properties: #IStreamtubeProperty list) = Interop.mkStreamtubeAttr "streamtube" (createObj !!properties) + static member streamtube (properties: (bool * IStreamtubeProperty list) list) = Interop.mkStreamtubeAttr "streamtube" (properties |> Bindings.Internal.withConditionals) + static member inline scattergeo (properties: #IScattergeoProperty list) = Interop.mkScattergeoAttr "scattergeo" (createObj !!properties) + static member scattergeo (properties: (bool * IScattergeoProperty list) list) = Interop.mkScattergeoAttr "scattergeo" (properties |> Bindings.Internal.withConditionals) + static member inline choropleth (properties: #IChoroplethProperty list) = Interop.mkChoroplethAttr "choropleth" (createObj !!properties) + static member choropleth (properties: (bool * IChoroplethProperty list) list) = Interop.mkChoroplethAttr "choropleth" (properties |> Bindings.Internal.withConditionals) + static member inline scattergl (properties: #IScatterglProperty list) = Interop.mkScatterglAttr "scattergl" (createObj !!properties) + static member scattergl (properties: (bool * IScatterglProperty list) list) = Interop.mkScatterglAttr "scattergl" (properties |> Bindings.Internal.withConditionals) + static member inline splom (properties: #ISplomProperty list) = Interop.mkSplomAttr "splom" (createObj !!properties) + static member splom (properties: (bool * ISplomProperty list) list) = Interop.mkSplomAttr "splom" (properties |> Bindings.Internal.withConditionals) + static member inline pointcloud (properties: #IPointcloudProperty list) = Interop.mkPointcloudAttr "pointcloud" (createObj !!properties) + static member pointcloud (properties: (bool * IPointcloudProperty list) list) = Interop.mkPointcloudAttr "pointcloud" (properties |> Bindings.Internal.withConditionals) + static member inline heatmapgl (properties: #IHeatmapglProperty list) = Interop.mkHeatmapglAttr "heatmapgl" (createObj !!properties) + static member heatmapgl (properties: (bool * IHeatmapglProperty list) list) = Interop.mkHeatmapglAttr "heatmapgl" (properties |> Bindings.Internal.withConditionals) + static member inline parcoords (properties: #IParcoordsProperty list) = Interop.mkParcoordsAttr "parcoords" (createObj !!properties) + static member parcoords (properties: (bool * IParcoordsProperty list) list) = Interop.mkParcoordsAttr "parcoords" (properties |> Bindings.Internal.withConditionals) + static member inline parcats (properties: #IParcatsProperty list) = Interop.mkParcatsAttr "parcats" (createObj !!properties) + static member parcats (properties: (bool * IParcatsProperty list) list) = Interop.mkParcatsAttr "parcats" (properties |> Bindings.Internal.withConditionals) + static member inline scattermapbox (properties: #IScattermapboxProperty list) = Interop.mkScattermapboxAttr "scattermapbox" (createObj !!properties) + static member scattermapbox (properties: (bool * IScattermapboxProperty list) list) = Interop.mkScattermapboxAttr "scattermapbox" (properties |> Bindings.Internal.withConditionals) + static member inline choroplethmapbox (properties: #IChoroplethmapboxProperty list) = Interop.mkChoroplethmapboxAttr "choroplethmapbox" (createObj !!properties) + static member choroplethmapbox (properties: (bool * IChoroplethmapboxProperty list) list) = Interop.mkChoroplethmapboxAttr "choroplethmapbox" (properties |> Bindings.Internal.withConditionals) + static member inline densitymapbox (properties: #IDensitymapboxProperty list) = Interop.mkDensitymapboxAttr "densitymapbox" (createObj !!properties) + static member densitymapbox (properties: (bool * IDensitymapboxProperty list) list) = Interop.mkDensitymapboxAttr "densitymapbox" (properties |> Bindings.Internal.withConditionals) + static member inline sankey (properties: #ISankeyProperty list) = Interop.mkSankeyAttr "sankey" (createObj !!properties) + static member sankey (properties: (bool * ISankeyProperty list) list) = Interop.mkSankeyAttr "sankey" (properties |> Bindings.Internal.withConditionals) + static member inline indicator (properties: #IIndicatorProperty list) = Interop.mkIndicatorAttr "indicator" (createObj !!properties) + static member indicator (properties: (bool * IIndicatorProperty list) list) = Interop.mkIndicatorAttr "indicator" (properties |> Bindings.Internal.withConditionals) + static member inline table (properties: #ITableProperty list) = Interop.mkTableAttr "table" (createObj !!properties) + static member table (properties: (bool * ITableProperty list) list) = Interop.mkTableAttr "table" (properties |> Bindings.Internal.withConditionals) + static member inline carpet (properties: #ICarpetProperty list) = Interop.mkCarpetAttr "carpet" (createObj !!properties) + static member carpet (properties: (bool * ICarpetProperty list) list) = Interop.mkCarpetAttr "carpet" (properties |> Bindings.Internal.withConditionals) + static member inline scattercarpet (properties: #IScattercarpetProperty list) = Interop.mkScattercarpetAttr "scattercarpet" (createObj !!properties) + static member scattercarpet (properties: (bool * IScattercarpetProperty list) list) = Interop.mkScattercarpetAttr "scattercarpet" (properties |> Bindings.Internal.withConditionals) + static member inline contourcarpet (properties: #IContourcarpetProperty list) = Interop.mkContourcarpetAttr "contourcarpet" (createObj !!properties) + static member contourcarpet (properties: (bool * IContourcarpetProperty list) list) = Interop.mkContourcarpetAttr "contourcarpet" (properties |> Bindings.Internal.withConditionals) + static member inline ohlc (properties: #IOhlcProperty list) = Interop.mkOhlcAttr "ohlc" (createObj !!properties) + static member ohlc (properties: (bool * IOhlcProperty list) list) = Interop.mkOhlcAttr "ohlc" (properties |> Bindings.Internal.withConditionals) + static member inline candlestick (properties: #ICandlestickProperty list) = Interop.mkCandlestickAttr "candlestick" (createObj !!properties) + static member candlestick (properties: (bool * ICandlestickProperty list) list) = Interop.mkCandlestickAttr "candlestick" (properties |> Bindings.Internal.withConditionals) + static member inline scatterpolar (properties: #IScatterpolarProperty list) = Interop.mkScatterpolarAttr "scatterpolar" (createObj !!properties) + static member scatterpolar (properties: (bool * IScatterpolarProperty list) list) = Interop.mkScatterpolarAttr "scatterpolar" (properties |> Bindings.Internal.withConditionals) + static member inline scatterpolargl (properties: #IScatterpolarglProperty list) = Interop.mkScatterpolarglAttr "scatterpolargl" (createObj !!properties) + static member scatterpolargl (properties: (bool * IScatterpolarglProperty list) list) = Interop.mkScatterpolarglAttr "scatterpolargl" (properties |> Bindings.Internal.withConditionals) + static member inline barpolar (properties: #IBarpolarProperty list) = Interop.mkBarpolarAttr "barpolar" (createObj !!properties) + static member barpolar (properties: (bool * IBarpolarProperty list) list) = Interop.mkBarpolarAttr "barpolar" (properties |> Bindings.Internal.withConditionals) + static member inline area (properties: #IAreaProperty list) = Interop.mkAreaAttr "area" (createObj !!properties) + static member area (properties: (bool * IAreaProperty list) list) = Interop.mkAreaAttr "area" (properties |> Bindings.Internal.withConditionals) + /// When provided, causes the plot to update when the revision is incremented. + static member inline revision (value: int) = Interop.mkPlotAttr "revision" value + /// When provided, causes the plot to update when the revision is incremented. + static member inline revision (value: float) = Interop.mkPlotAttr "revision" value + /// Callback executed after plot is initialized. + static member inline onInitialized (handler: obj -> HTMLElement -> unit) = Interop.mkPlotAttr "onInitialized" handler + /// Callback executed when when a plot is updated due to new data or layout, or when user interacts with a plot. + static member inline onUpdate (handler: obj -> HTMLElement -> unit) = Interop.mkPlotAttr "onUpdate" handler + /// Callback executed when component unmounts, before Plotly.purge strips the graphDiv of all private attributes. + static member inline onPurge (handler: obj -> HTMLElement -> unit) = Interop.mkPlotAttr "onPurge" handler + /// Callback executed when a plotly.js API method rejects + static member inline onError (handler: ErrorEvent -> unit) = Interop.mkPlotAttr "onError" handler + /// Id assigned to the
into which the plot is rendered. + static member inline divId (value: string) = Interop.mkPlotAttr "divId" value + /// Class applied to the
into which the plot is rendered + static member inline className (value: string) = Interop.mkPlotAttr "className" value + /// Styles the
into which the plot is rendered + static member inline style (properties: #IStyleAttribute list) = Interop.mkAttr "style" (createObj !!properties) + /// Styles the
into which the plot is rendered + static member style (properties: (bool * IStyleAttribute list) list) = Interop.mkAttr "style" (properties |> Bindings.Internal.withConditionals) + /// Assign the graph div to window.gd for debugging + static member inline debug (value: bool) = Interop.mkPlotAttr "debug" value + /// When true, adds a call to Plotly.Plot.resize() as a window.resize event handler + static member inline useResizeHandler (value: bool) = Interop.mkPlotAttr "useResizeHandler" value + static member inline onAfterExport (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onClick" handler + static member inline onAfterPlot (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onAfterPlot" handler + static member inline onAnimated (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onAnimated" handler + static member inline onAnimatingFrame (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onAnimatingFrame" handler + static member inline onAnimationInterrupted (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onAnimationInterrupted" handler + static member inline onAutoSize (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onAutoSize" handler + static member inline onBeforeExport (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onBeforeExport" handler + static member inline onButtonClicked (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onButtonClicked" handler + static member inline onClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onClick" handler + static member inline onClickAnnotation (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onClickAnnotation" handler + static member inline onDeselect (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onDeselect" handler + static member inline onDoubleClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onDoubleClick" handler + static member inline onFramework (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onFramework" handler + static member inline onHover (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onHover" handler + static member inline onLegendClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onLegendClick" handler + static member inline onLegendDoubleClick (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onLegendDoubleClick" handler + static member inline onRelayout (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onRelayout" handler + static member inline onRestyle (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onRestyle" handler + static member inline onRedraw (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onRedraw" handler + static member inline onSelected (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onSelected" handler + static member inline onSelecting (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onSelecting" handler + static member inline onSliderChange (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onSliderChange" handler + static member inline onSliderEnd (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onSliderEnd" handler + static member inline onSliderStart (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onSliderStart" handler + static member inline onTransitioning (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onTransitioning" handler + static member inline onTransitionInterrupted (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onTransitionInterrupted" handler + static member inline onUnhover (handler: MouseEvent -> unit) = Interop.mkPlotAttr "onUnhover" handler + +[] +type Plotly = + /// Create a Plotly plot component. + static member inline plot (props: #IPlotProperty list) : ReactElement = Bindings.Internal.createPlot (createObj !!props) diff --git a/src/Feliz.Plotly/Props/Config.fs b/src/Feliz.Plotly/Props/Config.fs new file mode 100644 index 0000000..726b1c2 --- /dev/null +++ b/src/Feliz.Plotly/Props/Config.fs @@ -0,0 +1,238 @@ +namespace Feliz.Plotly + +(*//////////////////////////////// +/// THIS FILE IS AUTO-GENERATED // +////////////////////////////////*) + +open System +open Browser.Types +open Fable.Core +open Fable.Core.JsInterop +open Feliz + +[] +type config = + /// Determines whether the graphs are interactive or not. If *false*, no interactivity, for export or image generation. + static member inline staticPlot (value: bool) = Interop.mkPlotAttr "staticPlot" value + /// Sets base URL for the 'Edit in Chart Studio' (aka sendDataToCloud) mode bar button and the showLink/sendData on-graph link + static member inline plotlyServerURL (value: string) = Interop.mkPlotAttr "plotlyServerURL" value + /// Determines whether the graph is editable or not. Sets all pieces of `edits` unless a separate `edits` config item overrides individual parts. + static member inline editable (value: bool) = Interop.mkPlotAttr "editable" value + /// Determines whether the graphs are plotted with respect to layout.autosize:true and infer its container size. + static member inline autosizable (value: bool) = Interop.mkPlotAttr "autosizable" value + /// Determines whether to change the layout size when window is resized. In v2, this option will be removed and will always be true. + static member inline responsive (value: bool) = Interop.mkPlotAttr "responsive" value + /// When `layout.autosize` is turned on, determines whether the graph fills the container (the default) or the screen (if set to *true*). + static member inline fillFrame (value: bool) = Interop.mkPlotAttr "fillFrame" value + /// When `layout.autosize` is turned on, set the frame margins in fraction of the graph size. + static member inline frameMargins (value: int) = Interop.mkPlotAttr "frameMargins" value + /// When `layout.autosize` is turned on, set the frame margins in fraction of the graph size. + static member inline frameMargins (value: float) = Interop.mkPlotAttr "frameMargins" value + /// Determines whether mouse wheel or two-finger scroll zooms is enable. Turned on by default for gl3d, geo and mapbox subplots (as these subplot types do not have zoombox via pan), but turned off by default for cartesian subplots. Set `scrollZoom` to *false* to disable scrolling for all subplots. + static member inline scrollZoom (values: seq) = Interop.mkPlotAttr "scrollZoom" values + /// Sets the delay for registering a double-click in ms. This is the time interval (in ms) between first mousedown and 2nd mouseup to constitute a double-click. This setting propagates to all on-subplot double clicks (except for geo and mapbox) and on-legend double clicks. + static member inline doubleClickDelay (value: int) = Interop.mkPlotAttr "doubleClickDelay" value + /// Sets the delay for registering a double-click in ms. This is the time interval (in ms) between first mousedown and 2nd mouseup to constitute a double-click. This setting propagates to all on-subplot double clicks (except for geo and mapbox) and on-legend double clicks. + static member inline doubleClickDelay (value: float) = Interop.mkPlotAttr "doubleClickDelay" value + /// Set to *false* to omit cartesian axis pan/zoom drag handles. + static member inline showAxisDragHandles (value: bool) = Interop.mkPlotAttr "showAxisDragHandles" value + /// Set to *false* to omit direct range entry at the pan/zoom drag points, note that `showAxisDragHandles` must be enabled to have an effect. + static member inline showAxisRangeEntryBoxes (value: bool) = Interop.mkPlotAttr "showAxisRangeEntryBoxes" value + /// Determines whether or not tips are shown while interacting with the resulting graphs. + static member inline showTips (value: bool) = Interop.mkPlotAttr "showTips" value + /// Determines whether a link to plot.ly is displayed at the bottom right corner of resulting graphs. Use with `sendData` and `linkText`. + static member inline showLink (value: bool) = Interop.mkPlotAttr "showLink" value + /// Sets the text appearing in the `showLink` link. + static member inline linkText (value: string) = Interop.mkPlotAttr "linkText" value + /// If *showLink* is true, does it contain data just link to a plot.ly file? + static member inline sendData (value: bool) = Interop.mkPlotAttr "sendData" value + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (value: bool) = Interop.mkPlotAttr "showSources" value + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (values: seq) = Interop.mkPlotAttr "showSources" values + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (value: string) = Interop.mkPlotAttr "showSources" value + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (values: seq) = Interop.mkPlotAttr "showSources" values + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (value: int) = Interop.mkPlotAttr "showSources" value + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (values: seq) = Interop.mkPlotAttr "showSources" values + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (value: float) = Interop.mkPlotAttr "showSources" value + /// Adds a source-displaying function to show sources on the resulting graphs. + static member inline showSources (values: seq) = Interop.mkPlotAttr "showSources" values + /// Should we include a ModeBar button, labeled \"Edit in Chart Studio\", that sends this chart to plot.ly or another plotly server as specified by `plotlyServerURL` for editing, export, etc? Prior to version 1.43.0 this button was included by default, now it is opt-in using this flag. Note that this button can (depending on `plotlyServerURL`) send your data to an external server. However that server does not persist your data until you arrive at the Chart Studio and explicitly click \"Save\". + static member inline showSendToCloud (value: bool) = Interop.mkPlotAttr "showSendToCloud" value + /// Same as `showSendToCloud`, but use a pencil icon instead of a floppy-disk. Note that if both `showSendToCloud` and `showEditInChartStudio` are turned, only `showEditInChartStudio` will be honored. + static member inline showEditInChartStudio (value: bool) = Interop.mkPlotAttr "showEditInChartStudio" value + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (value: bool) = Interop.mkPlotAttr "modeBarButtonsToRemove" value + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (values: seq) = Interop.mkPlotAttr "modeBarButtonsToRemove" values + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (value: string) = Interop.mkPlotAttr "modeBarButtonsToRemove" value + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (values: seq) = Interop.mkPlotAttr "modeBarButtonsToRemove" values + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (value: int) = Interop.mkPlotAttr "modeBarButtonsToRemove" value + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (values: seq) = Interop.mkPlotAttr "modeBarButtonsToRemove" values + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (value: float) = Interop.mkPlotAttr "modeBarButtonsToRemove" value + /// Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names. + static member inline modeBarButtonsToRemove (values: seq) = Interop.mkPlotAttr "modeBarButtonsToRemove" values + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (value: bool) = Interop.mkPlotAttr "modeBarButtonsToAdd" value + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (values: seq) = Interop.mkPlotAttr "modeBarButtonsToAdd" values + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (value: string) = Interop.mkPlotAttr "modeBarButtonsToAdd" value + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (values: seq) = Interop.mkPlotAttr "modeBarButtonsToAdd" values + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (value: int) = Interop.mkPlotAttr "modeBarButtonsToAdd" value + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (values: seq) = Interop.mkPlotAttr "modeBarButtonsToAdd" values + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (value: float) = Interop.mkPlotAttr "modeBarButtonsToAdd" value + /// Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments. + static member inline modeBarButtonsToAdd (values: seq) = Interop.mkPlotAttr "modeBarButtonsToAdd" values + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (value: bool) = Interop.mkPlotAttr "modeBarButtons" value + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (values: seq) = Interop.mkPlotAttr "modeBarButtons" values + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (value: string) = Interop.mkPlotAttr "modeBarButtons" value + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (values: seq) = Interop.mkPlotAttr "modeBarButtons" values + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (value: int) = Interop.mkPlotAttr "modeBarButtons" value + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (values: seq) = Interop.mkPlotAttr "modeBarButtons" values + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (value: float) = Interop.mkPlotAttr "modeBarButtons" value + /// Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info. + static member inline modeBarButtons (values: seq) = Interop.mkPlotAttr "modeBarButtons" values + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (value: bool) = Interop.mkPlotAttr "toImageButtonOptions" value + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (values: seq) = Interop.mkPlotAttr "toImageButtonOptions" values + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (value: string) = Interop.mkPlotAttr "toImageButtonOptions" value + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (values: seq) = Interop.mkPlotAttr "toImageButtonOptions" values + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (value: int) = Interop.mkPlotAttr "toImageButtonOptions" value + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (values: seq) = Interop.mkPlotAttr "toImageButtonOptions" values + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (value: float) = Interop.mkPlotAttr "toImageButtonOptions" value + /// Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js + static member inline toImageButtonOptions (values: seq) = Interop.mkPlotAttr "toImageButtonOptions" values + /// Determines whether or not the plotly logo is displayed on the end of the mode bar. + static member inline displaylogo (value: bool) = Interop.mkPlotAttr "displaylogo" value + /// watermark the images with the company's logo + static member inline watermark (value: bool) = Interop.mkPlotAttr "watermark" value + /// Set the pixel ratio during WebGL image export. This config option was formerly named `plot3dPixelRatio` which is now deprecated. + static member inline plotGlPixelRatio (value: int) = Interop.mkPlotAttr "plotGlPixelRatio" value + /// Set the pixel ratio during WebGL image export. This config option was formerly named `plot3dPixelRatio` which is now deprecated. + static member inline plotGlPixelRatio (value: float) = Interop.mkPlotAttr "plotGlPixelRatio" value + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (value: bool) = Interop.mkPlotAttr "setBackground" value + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (values: seq) = Interop.mkPlotAttr "setBackground" values + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (value: string) = Interop.mkPlotAttr "setBackground" value + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (values: seq) = Interop.mkPlotAttr "setBackground" values + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (value: int) = Interop.mkPlotAttr "setBackground" value + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (values: seq) = Interop.mkPlotAttr "setBackground" values + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (value: float) = Interop.mkPlotAttr "setBackground" value + /// Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it. + static member inline setBackground (values: seq) = Interop.mkPlotAttr "setBackground" values + /// Set the URL to topojson used in geo charts. By default, the topojson files are fetched from cdn.plot.ly. For example, set this option to: /dist/topojson/ to render geographical feature using the topojson files that ship with the plotly.js module. + static member inline topojsonURL (value: string) = Interop.mkPlotAttr "topojsonURL" value + /// Mapbox access token (required to plot mapbox trace types) If using an Mapbox Atlas server, set this option to '' so that plotly.js won't attempt to authenticate to the public Mapbox server. + static member inline mapboxAccessToken (value: string) = Interop.mkPlotAttr "mapboxAccessToken" value + /// Turn all console logging on or off (errors will be thrown) This should ONLY be set via Plotly.setPlotConfig Available levels: 0: no logs 1: warnings and errors, but not informational messages 2: verbose logs + static member inline logging (value: bool) = Interop.mkPlotAttr "logging" value + /// Sets the length of the undo/redo queue. + static member inline queueLength (value: int) = Interop.mkPlotAttr "queueLength" value + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (value: bool) = Interop.mkPlotAttr "globalTransforms" value + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (values: seq) = Interop.mkPlotAttr "globalTransforms" values + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (value: string) = Interop.mkPlotAttr "globalTransforms" value + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (values: seq) = Interop.mkPlotAttr "globalTransforms" values + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (value: int) = Interop.mkPlotAttr "globalTransforms" value + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (values: seq) = Interop.mkPlotAttr "globalTransforms" values + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (value: float) = Interop.mkPlotAttr "globalTransforms" value + /// Set global transform to be applied to all traces with no specification needed + static member inline globalTransforms (values: seq) = Interop.mkPlotAttr "globalTransforms" values + /// Which localization should we use? Should be a string like 'en' or 'en-US'. + static member inline locale (value: string) = Interop.mkPlotAttr "locale" value + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (value: bool) = Interop.mkPlotAttr "locales" value + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (values: seq) = Interop.mkPlotAttr "locales" values + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (value: string) = Interop.mkPlotAttr "locales" value + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (values: seq) = Interop.mkPlotAttr "locales" values + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (value: int) = Interop.mkPlotAttr "locales" value + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (values: seq) = Interop.mkPlotAttr "locales" values + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (value: float) = Interop.mkPlotAttr "locales" value + /// Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats. + static member inline locales (values: seq) = Interop.mkPlotAttr "locales" values + +module config = + /// Sets the double click interaction mode. Has an effect only in cartesian plots. If *false*, double click is disable. If *reset*, double click resets the axis ranges to their initial values. If *autosize*, double click set the axis ranges to their autorange values. If *reset+autosize*, the odd double clicks resets the axis ranges to their initial values and even double clicks set the axis ranges to their autorange values. + [] + type doubleClick = + static member inline false' = Interop.mkPlotAttr "doubleClick" false + static member inline reset = Interop.mkPlotAttr "doubleClick" "reset" + static member inline autosize = Interop.mkPlotAttr "doubleClick" "autosize" + static member inline resetAndAutosize = Interop.mkPlotAttr "doubleClick" "reset+autosize" + + /// Determines the mode bar display mode. If *true*, the mode bar is always visible. If *false*, the mode bar is always hidden. If *hover*, the mode bar is visible while the mouse cursor is on the graph container. + [] + type displayModeBar = + static member inline hover = Interop.mkPlotAttr "displayModeBar" "hover" + static member inline true' = Interop.mkPlotAttr "displayModeBar" true + static member inline false' = Interop.mkPlotAttr "displayModeBar" false + + [] + type edits = + /// Determines if the main anchor of the annotation is editable. The main anchor corresponds to the text (if no arrow) or the arrow (which drags the whole thing leaving the arrow length & direction unchanged). + static member inline annotationPosition (value: bool) = Interop.mkPlotAttr "annotationPosition" value + /// Has only an effect for annotations with arrows. Enables changing the length and direction of the arrow. + static member inline annotationTail (value: bool) = Interop.mkPlotAttr "annotationTail" value + /// Enables editing annotation text. + static member inline annotationText (value: bool) = Interop.mkPlotAttr "annotationText" value + /// Enables editing axis title text. + static member inline axisTitleText (value: bool) = Interop.mkPlotAttr "axisTitleText" value + /// Enables moving colorbars. + static member inline colorbarPosition (value: bool) = Interop.mkPlotAttr "colorbarPosition" value + /// Enables editing colorbar title text. + static member inline colorbarTitleText (value: bool) = Interop.mkPlotAttr "colorbarTitleText" value + /// Enables moving the legend. + static member inline legendPosition (value: bool) = Interop.mkPlotAttr "legendPosition" value + /// Enables editing the trace name fields from the legend + static member inline legendText (value: bool) = Interop.mkPlotAttr "legendText" value + /// Enables moving shapes. + static member inline shapePosition (value: bool) = Interop.mkPlotAttr "shapePosition" value + /// Enables editing the global layout title. + static member inline titleText (value: bool) = Interop.mkPlotAttr "titleText" value + diff --git a/src/Feliz.Plotly/Props/Data.fs b/src/Feliz.Plotly/Props/Data.fs new file mode 100644 index 0000000..2c5d565 --- /dev/null +++ b/src/Feliz.Plotly/Props/Data.fs @@ -0,0 +1,32613 @@ +namespace Feliz.Plotly + +(*//////////////////////////////// +/// THIS FILE IS AUTO-GENERATED // +////////////////////////////////*) + +open System +open Browser.Types +open Fable.Core +open Fable.Core.JsInterop +open Feliz + +module data = + [] + type scatter = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Set several scatter traces (on the same subplot) to the same stackgroup in order to add their y values (or their x values if `orientation` is *h*). If blank or omitted this trace will not be stacked. Stacking also turns `fill` on by default, using *tonexty* (*tonextx*) if `orientation` is *h* (*v*) and sets the default `mode` to *lines* irrespective of point count. You can only stack on a numeric (linear or log) axis. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order. + static member inline stackgroup (value: string) = Interop.mkPlotAttr "stackgroup" value + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*. + static member inline hoveron (values: seq) = Interop.mkPlotAttr "hoveron" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*. + static member inline cliponaxis (value: bool) = Interop.mkPlotAttr "cliponaxis" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for r . + static member inline rsrc (value: string) = Interop.mkPlotAttr "rsrc" value + /// Sets the source reference on plot.ly for t . + static member inline tsrc (value: string) = Interop.mkPlotAttr "tsrc" value + + module scatter = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Only relevant when `stackgroup` is used, and only the first `orientation` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the stacking direction. With *v* (*h*), the y (x) values of subsequent traces are added. Also affects the default value of `fill`. + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Only relevant when `stackgroup` is used, and only the first `groupnorm` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the normalization for the sum of this `stackgroup`. With *fraction*, the value of each trace at each location is divided by the sum of all trace values at that location. *percent* is the same but multiplied by 100 to show percentages. If there are multiple subplots, or multiple `stackgroup`s on one subplot, each will be normalized within its own set. + [] + type groupnorm = + static member inline none = Interop.mkPlotAttr "groupnorm" "" + static member inline fraction = Interop.mkPlotAttr "groupnorm" "fraction" + static member inline percent = Interop.mkPlotAttr "groupnorm" "percent" + + /// Only relevant when `stackgroup` is used, and only the first `stackgaps` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Determines how we handle locations at which other traces in this group have data but this one does not. With *infer zero* we insert a zero at these locations. With *interpolate* we linearly interpolate between existing values, and extrapolate a constant beyond the existing values. + [] + type stackgaps = + static member inline inferZero = Interop.mkPlotAttr "stackgaps" "infer zero" + static member inline interpolate = Interop.mkPlotAttr "stackgaps" "interpolate" + + /// Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline tozeroy = Interop.mkPlotAttr "fill" "tozeroy" + static member inline tozerox = Interop.mkPlotAttr "fill" "tozerox" + static member inline tonexty = Interop.mkPlotAttr "fill" "tonexty" + static member inline tonextx = Interop.mkPlotAttr "fill" "tonextx" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + static member inline tonext = Interop.mkPlotAttr "fill" "tonext" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + /// Simplifies lines by removing nearly-collinear points. When transitioning lines, it may be desirable to disable this so that the number of points along the resulting SVG path is unaffected. + static member inline simplify (value: bool) = Interop.mkPlotAttr "simplify" value + + module line = + /// Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes. + [] + type shape = + static member inline linear = Interop.mkPlotAttr "shape" "linear" + static member inline spline = Interop.mkPlotAttr "shape" "spline" + static member inline hv = Interop.mkPlotAttr "shape" "hv" + static member inline vh = Interop.mkPlotAttr "shape" "vh" + static member inline hvh = Interop.mkPlotAttr "shape" "hvh" + static member inline vhv = Interop.mkPlotAttr "shape" "vhv" + + [] + type marker = + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: int) = Interop.mkPlotAttr "maxdisplayed" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: float) = Interop.mkPlotAttr "maxdisplayed" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type gradient = + /// Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for type . + static member inline typesrc (value: string) = Interop.mkPlotAttr "typesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module gradient = + /// Sets the type of gradient used to fill the markers + [] + type type' = + static member inline radial = Interop.mkPlotAttr "type" "radial" + static member inline horizontal = Interop.mkPlotAttr "type" "horizontal" + static member inline vertical = Interop.mkPlotAttr "type" "vertical" + static member inline none = Interop.mkPlotAttr "type" "none" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type error_x = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + static member inline copy_ystyle (value: bool) = Interop.mkPlotAttr "copy_ystyle" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_x = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type error_y = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_y = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type bar = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars. + static member inline textangle (value: int) = Interop.mkPlotAttr "textangle" value + /// Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars. + static member inline textangle (value: float) = Interop.mkPlotAttr "textangle" value + /// Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*. + static member inline cliponaxis (value: bool) = Interop.mkPlotAttr "cliponaxis" value + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: bool) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: string) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: int) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: float) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead. + static member inline offset (value: int) = Interop.mkPlotAttr "offset" value + /// Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead. + static member inline offset (value: float) = Interop.mkPlotAttr "offset" value + /// Sets the bar width (in position axis units). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the bar width (in position axis units). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up. + static member inline offsetgroup (value: string) = Interop.mkPlotAttr "offsetgroup" value + /// Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently. + static member inline alignmentgroup (value: string) = Interop.mkPlotAttr "alignmentgroup" value + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for base . + static member inline basesrc (value: string) = Interop.mkPlotAttr "basesrc" value + /// Sets the source reference on plot.ly for offset . + static member inline offsetsrc (value: string) = Interop.mkPlotAttr "offsetsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for r . + static member inline rsrc (value: string) = Interop.mkPlotAttr "rsrc" value + /// Sets the source reference on plot.ly for t . + static member inline tsrc (value: string) = Interop.mkPlotAttr "tsrc" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline bargap (value: int) = Interop.mkPlotAttr "bargap" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline bargap (value: float) = Interop.mkPlotAttr "bargap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline bargroupgap (value: int) = Interop.mkPlotAttr "bargroupgap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline bargroupgap (value: float) = Interop.mkPlotAttr "bargroupgap" value + + module bar = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. + [] + type textposition = + static member inline inside = Interop.mkPlotAttr "textposition" "inside" + static member inline outside = Interop.mkPlotAttr "textposition" "outside" + static member inline auto = Interop.mkPlotAttr "textposition" "auto" + static member inline none = Interop.mkPlotAttr "textposition" "none" + + /// Determines if texts are kept at center or start/end points in `textposition` *inside* mode. + [] + type insidetextanchor = + static member inline end' = Interop.mkPlotAttr "insidetextanchor" "end" + static member inline middle = Interop.mkPlotAttr "insidetextanchor" "middle" + static member inline start = Interop.mkPlotAttr "insidetextanchor" "start" + + /// Constrain the size of text inside or outside a bar to be no larger than the bar itself. + [] + type constraintext = + static member inline inside = Interop.mkPlotAttr "constraintext" "inside" + static member inline outside = Interop.mkPlotAttr "constraintext" "outside" + static member inline both = Interop.mkPlotAttr "constraintext" "both" + static member inline none = Interop.mkPlotAttr "constraintext" "none" + + /// Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal). + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + /// Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars. + [] + type barmode = + static member inline stack = Interop.mkPlotAttr "barmode" "stack" + static member inline group = Interop.mkPlotAttr "barmode" "group" + static member inline overlay = Interop.mkPlotAttr "barmode" "overlay" + static member inline relative = Interop.mkPlotAttr "barmode" "relative" + + /// Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages. + [] + type barnorm = + static member inline none = Interop.mkPlotAttr "barnorm" "" + static member inline fraction = Interop.mkPlotAttr "barnorm" "fraction" + static member inline percent = Interop.mkPlotAttr "barnorm" "percent" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type insidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type outsidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type marker = + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the bars. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the bars. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type error_x = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + static member inline copy_ystyle (value: bool) = Interop.mkPlotAttr "copy_ystyle" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_x = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type error_y = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_y = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type box = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the trace name. The trace name appear as the legend item and on hover. For box traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the width of the whiskers relative to the box' width. For example, with 1, the whiskers are as wide as the box(es). + static member inline whiskerwidth (value: int) = Interop.mkPlotAttr "whiskerwidth" value + /// Sets the width of the whiskers relative to the box' width. For example, with 1, the whiskers are as wide as the box(es). + static member inline whiskerwidth (value: float) = Interop.mkPlotAttr "whiskerwidth" value + /// Determines whether or not notches should be drawn. + static member inline notched (value: bool) = Interop.mkPlotAttr "notched" value + /// Sets the width of the notches relative to the box' width. For example, with 0, the notches are as wide as the box(es). + static member inline notchwidth (value: int) = Interop.mkPlotAttr "notchwidth" value + /// Sets the width of the notches relative to the box' width. For example, with 0, the notches are as wide as the box(es). + static member inline notchwidth (value: float) = Interop.mkPlotAttr "notchwidth" value + /// Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the box(es). + static member inline jitter (value: int) = Interop.mkPlotAttr "jitter" value + /// Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the box(es). + static member inline jitter (value: float) = Interop.mkPlotAttr "jitter" value + /// Sets the position of the sample points in relation to the box(es). If *0*, the sample points are places over the center of the box(es). Positive (negative) values correspond to positions to the right (left) for vertical boxes and above (below) for horizontal boxes + static member inline pointpos (value: int) = Interop.mkPlotAttr "pointpos" value + /// Sets the position of the sample points in relation to the box(es). If *0*, the sample points are places over the center of the box(es). Positive (negative) values correspond to positions to the right (left) for vertical boxes and above (below) for horizontal boxes + static member inline pointpos (value: float) = Interop.mkPlotAttr "pointpos" value + /// Sets the width of the box in data coordinate If *0* (default value) the width is automatically selected based on the positions of other box traces in the same subplot. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the box in data coordinate If *0* (default value) the width is automatically selected based on the positions of other box traces in the same subplot. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up. + static member inline offsetgroup (value: string) = Interop.mkPlotAttr "offsetgroup" value + /// Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently. + static member inline alignmentgroup (value: string) = Interop.mkPlotAttr "alignmentgroup" value + /// Do the hover effects highlight individual boxes or sample points or both? + static member inline hoveron (values: seq) = Interop.mkPlotAttr "hoveron" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set. + static member inline boxgap (value: int) = Interop.mkPlotAttr "boxgap" value + /// Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set. + static member inline boxgap (value: float) = Interop.mkPlotAttr "boxgap" value + /// Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set. + static member inline boxgroupgap (value: int) = Interop.mkPlotAttr "boxgroupgap" value + /// Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set. + static member inline boxgroupgap (value: float) = Interop.mkPlotAttr "boxgroupgap" value + + module box = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the box(es) are shown with no sample points + [] + type boxpoints = + static member inline all = Interop.mkPlotAttr "boxpoints" "all" + static member inline outliers = Interop.mkPlotAttr "boxpoints" "outliers" + static member inline suspectedoutliers = Interop.mkPlotAttr "boxpoints" "suspectedoutliers" + static member inline false' = Interop.mkPlotAttr "boxpoints" false + + /// If *true*, the mean of the box(es)' underlying distribution is drawn as a dashed line inside the box(es). If *sd* the standard deviation is also drawn. + [] + type boxmean = + static member inline true' = Interop.mkPlotAttr "boxmean" true + static member inline sd = Interop.mkPlotAttr "boxmean" "sd" + static member inline false' = Interop.mkPlotAttr "boxmean" false + + /// Sets the orientation of the box(es). If *v* (*h*), the distribution is visualized along the vertical (horizontal). + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + /// Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set. + [] + type boxmode = + static member inline group = Interop.mkPlotAttr "boxmode" "group" + static member inline overlay = Interop.mkPlotAttr "boxmode" "overlay" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the color of the outlier sample points. + static member inline outliercolor (value: string) = Interop.mkPlotAttr "outliercolor" value + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + [] + type line = + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the border line color of the outlier sample points. Defaults to marker.color + static member inline outliercolor (value: string) = Interop.mkPlotAttr "outliercolor" value + /// Sets the border line width (in px) of the outlier sample points. + static member inline outlierwidth (value: int) = Interop.mkPlotAttr "outlierwidth" value + /// Sets the border line width (in px) of the outlier sample points. + static member inline outlierwidth (value: float) = Interop.mkPlotAttr "outlierwidth" value + + [] + type line = + /// Sets the color of line bounding the box(es). + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of line bounding the box(es). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of line bounding the box(es). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type heatmap = + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Transposes the z data. + static member inline transpose (value: bool) = Interop.mkPlotAttr "transpose" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the horizontal gap (in pixels) between bricks. + static member inline xgap (value: int) = Interop.mkPlotAttr "xgap" value + /// Sets the horizontal gap (in pixels) between bricks. + static member inline xgap (value: float) = Interop.mkPlotAttr "xgap" value + /// Sets the vertical gap (in pixels) between bricks. + static member inline ygap (value: int) = Interop.mkPlotAttr "ygap" value + /// Sets the vertical gap (in pixels) between bricks. + static member inline ygap (value: float) = Interop.mkPlotAttr "ygap" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline zhoverformat (value: string) = Interop.mkPlotAttr "zhoverformat" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module heatmap = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided). + [] + type xtype = + static member inline array = Interop.mkPlotAttr "xtype" "array" + static member inline scaled = Interop.mkPlotAttr "xtype" "scaled" + + /// If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided) + [] + type ytype = + static member inline array = Interop.mkPlotAttr "ytype" "array" + static member inline scaled = Interop.mkPlotAttr "ytype" "scaled" + + /// Picks a smoothing algorithm use to smooth `z` data. + [] + type zsmooth = + static member inline fast = Interop.mkPlotAttr "zsmooth" "fast" + static member inline best = Interop.mkPlotAttr "zsmooth" "best" + static member inline false' = Interop.mkPlotAttr "zsmooth" false + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type histogram = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided. + static member inline nbinsx (value: int) = Interop.mkPlotAttr "nbinsx" value + /// Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided. + static member inline nbinsy (value: int) = Interop.mkPlotAttr "nbinsy" value + /// Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace. + static member inline autobinx (value: bool) = Interop.mkPlotAttr "autobinx" value + /// Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace. + static member inline autobiny (value: bool) = Interop.mkPlotAttr "autobiny" value + /// Set a group of histogram traces which will have compatible bin settings. Note that traces on the same subplot and with the same *orientation* under `barmode` *stack*, *relative* and *group* are forced into the same bingroup, Using `bingroup`, traces under `barmode` *overlay* and on different axes (of the same axis type) can have compatible bin settings. Note that histogram and histogram2d* trace can share the same `bingroup` + static member inline bingroup (value: string) = Interop.mkPlotAttr "bingroup" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `binNumber` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up. + static member inline offsetgroup (value: string) = Interop.mkPlotAttr "offsetgroup" value + /// Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently. + static member inline alignmentgroup (value: string) = Interop.mkPlotAttr "alignmentgroup" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline bargap (value: int) = Interop.mkPlotAttr "bargap" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline bargap (value: float) = Interop.mkPlotAttr "bargap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline bargroupgap (value: int) = Interop.mkPlotAttr "bargroupgap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline bargroupgap (value: float) = Interop.mkPlotAttr "bargroupgap" value + + module histogram = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal). + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively. + [] + type histfunc = + static member inline count = Interop.mkPlotAttr "histfunc" "count" + static member inline sum = Interop.mkPlotAttr "histfunc" "sum" + static member inline avg = Interop.mkPlotAttr "histfunc" "avg" + static member inline min = Interop.mkPlotAttr "histfunc" "min" + static member inline max = Interop.mkPlotAttr "histfunc" "max" + + /// Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1). + [] + type histnorm = + static member inline none = Interop.mkPlotAttr "histnorm" "" + static member inline percent = Interop.mkPlotAttr "histnorm" "percent" + static member inline probability = Interop.mkPlotAttr "histnorm" "probability" + static member inline density = Interop.mkPlotAttr "histnorm" "density" + static member inline probabilityDensity = Interop.mkPlotAttr "histnorm" "probability density" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + /// Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars. + [] + type barmode = + static member inline stack = Interop.mkPlotAttr "barmode" "stack" + static member inline group = Interop.mkPlotAttr "barmode" "group" + static member inline overlay = Interop.mkPlotAttr "barmode" "overlay" + static member inline relative = Interop.mkPlotAttr "barmode" "relative" + + /// Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages. + [] + type barnorm = + static member inline none = Interop.mkPlotAttr "barnorm" "" + static member inline fraction = Interop.mkPlotAttr "barnorm" "fraction" + static member inline percent = Interop.mkPlotAttr "barnorm" "percent" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type cumulative = + /// If true, display the cumulative distribution by summing the binned values. Use the `direction` and `centralbin` attributes to tune the accumulation method. Note: in this mode, the *density* `histnorm` settings behave the same as their equivalents without *density*: ** and *density* both rise to the number of data points, and *probability* and *probability density* both rise to the number of sample points. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + + module cumulative = + /// Only applies if cumulative is enabled. If *increasing* (default) we sum all prior bins, so the result increases from left to right. If *decreasing* we sum later bins so the result decreases from left to right. + [] + type direction = + static member inline increasing = Interop.mkPlotAttr "direction" "increasing" + static member inline decreasing = Interop.mkPlotAttr "direction" "decreasing" + + /// Only applies if cumulative is enabled. Sets whether the current bin is included, excluded, or has half of its value included in the current cumulative value. *include* is the default for compatibility with various other tools, however it introduces a half-bin bias to the results. *exclude* makes the opposite half-bin bias, and *half* removes it. + [] + type currentbin = + static member inline include' = Interop.mkPlotAttr "currentbin" "include" + static member inline exclude = Interop.mkPlotAttr "currentbin" "exclude" + static member inline half = Interop.mkPlotAttr "currentbin" "half" + + [] + type xbins = + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: bool) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: string) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: bool) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: string) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: bool) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: string) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + + [] + type ybins = + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: bool) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: string) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: bool) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: string) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: bool) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: string) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above. + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + + [] + type marker = + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the bars. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the bars. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type error_x = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + static member inline copy_ystyle (value: bool) = Interop.mkPlotAttr "copy_ystyle" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_x = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type error_y = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_y = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type histogram2d = + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided. + static member inline nbinsx (value: int) = Interop.mkPlotAttr "nbinsx" value + /// Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided. + static member inline nbinsy (value: int) = Interop.mkPlotAttr "nbinsy" value + /// Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace. + static member inline autobinx (value: bool) = Interop.mkPlotAttr "autobinx" value + /// Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace. + static member inline autobiny (value: bool) = Interop.mkPlotAttr "autobiny" value + /// Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately. + static member inline bingroup (value: string) = Interop.mkPlotAttr "bingroup" value + /// Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup` + static member inline xbingroup (value: string) = Interop.mkPlotAttr "xbingroup" value + /// Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup` + static member inline ybingroup (value: string) = Interop.mkPlotAttr "ybingroup" value + /// Sets the horizontal gap (in pixels) between bricks. + static member inline xgap (value: int) = Interop.mkPlotAttr "xgap" value + /// Sets the horizontal gap (in pixels) between bricks. + static member inline xgap (value: float) = Interop.mkPlotAttr "xgap" value + /// Sets the vertical gap (in pixels) between bricks. + static member inline ygap (value: int) = Interop.mkPlotAttr "ygap" value + /// Sets the vertical gap (in pixels) between bricks. + static member inline ygap (value: float) = Interop.mkPlotAttr "ygap" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline zhoverformat (value: string) = Interop.mkPlotAttr "zhoverformat" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `z` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module histogram2d = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1). + [] + type histnorm = + static member inline none = Interop.mkPlotAttr "histnorm" "" + static member inline percent = Interop.mkPlotAttr "histnorm" "percent" + static member inline probability = Interop.mkPlotAttr "histnorm" "probability" + static member inline density = Interop.mkPlotAttr "histnorm" "density" + static member inline probabilityDensity = Interop.mkPlotAttr "histnorm" "probability density" + + /// Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively. + [] + type histfunc = + static member inline count = Interop.mkPlotAttr "histfunc" "count" + static member inline sum = Interop.mkPlotAttr "histfunc" "sum" + static member inline avg = Interop.mkPlotAttr "histfunc" "avg" + static member inline min = Interop.mkPlotAttr "histfunc" "min" + static member inline max = Interop.mkPlotAttr "histfunc" "max" + + /// Picks a smoothing algorithm use to smooth `z` data. + [] + type zsmooth = + static member inline fast = Interop.mkPlotAttr "zsmooth" "fast" + static member inline best = Interop.mkPlotAttr "zsmooth" "best" + static member inline false' = Interop.mkPlotAttr "zsmooth" false + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type xbins = + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: bool) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: string) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: bool) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: string) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: bool) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: string) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + + [] + type ybins = + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: bool) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: string) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: bool) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: string) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: bool) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: string) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type histogram2dcontour = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the x axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the sample data to be binned on the y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the aggregation data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided. + static member inline nbinsx (value: int) = Interop.mkPlotAttr "nbinsx" value + /// Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided. + static member inline nbinsy (value: int) = Interop.mkPlotAttr "nbinsy" value + /// Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace. + static member inline autobinx (value: bool) = Interop.mkPlotAttr "autobinx" value + /// Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace. + static member inline autobiny (value: bool) = Interop.mkPlotAttr "autobiny" value + /// Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately. + static member inline bingroup (value: string) = Interop.mkPlotAttr "bingroup" value + /// Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup` + static member inline xbingroup (value: string) = Interop.mkPlotAttr "xbingroup" value + /// Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup` + static member inline ybingroup (value: string) = Interop.mkPlotAttr "ybingroup" value + /// Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`. + static member inline autocontour (value: bool) = Interop.mkPlotAttr "autocontour" value + /// Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing. + static member inline ncontours (value: int) = Interop.mkPlotAttr "ncontours" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline zhoverformat (value: string) = Interop.mkPlotAttr "zhoverformat" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `z` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module histogram2dcontour = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1). + [] + type histnorm = + static member inline none = Interop.mkPlotAttr "histnorm" "" + static member inline percent = Interop.mkPlotAttr "histnorm" "percent" + static member inline probability = Interop.mkPlotAttr "histnorm" "probability" + static member inline density = Interop.mkPlotAttr "histnorm" "density" + static member inline probabilityDensity = Interop.mkPlotAttr "histnorm" "probability density" + + /// Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively. + [] + type histfunc = + static member inline count = Interop.mkPlotAttr "histfunc" "count" + static member inline sum = Interop.mkPlotAttr "histfunc" "sum" + static member inline avg = Interop.mkPlotAttr "histfunc" "avg" + static member inline min = Interop.mkPlotAttr "histfunc" "min" + static member inline max = Interop.mkPlotAttr "histfunc" "max" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the aggregation data. + static member inline color (values: seq) = Interop.mkPlotAttr "color" values + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type xbins = + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: bool) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: string) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: bool) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: string) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: bool) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: string) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + + [] + type ybins = + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: bool) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: string) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. + static member inline start (values: seq) = Interop.mkPlotAttr "start" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: bool) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: string) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers. + static member inline end' (values: seq) = Interop.mkPlotAttr "end" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: bool) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: string) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). + static member inline size (values: seq) = Interop.mkPlotAttr "size" values + + [] + type contours = + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*. + static member inline showlines (value: bool) = Interop.mkPlotAttr "showlines" value + /// Determines whether to label the contour lines with their values. + static member inline showlabels (value: bool) = Interop.mkPlotAttr "showlabels" value + /// Sets the contour label formatting rule using d3 formatting mini-language which is very similar to Python, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline labelformat (value: string) = Interop.mkPlotAttr "labelformat" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + + module contours = + /// If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters. + [] + type type' = + static member inline levels = Interop.mkPlotAttr "type" "levels" + static member inline constraint' = Interop.mkPlotAttr "type" "constraint" + + /// Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace. + [] + type coloring = + static member inline fill = Interop.mkPlotAttr "coloring" "fill" + static member inline heatmap = Interop.mkPlotAttr "coloring" "heatmap" + static member inline lines = Interop.mkPlotAttr "coloring" "lines" + static member inline none = Interop.mkPlotAttr "coloring" "none" + + /// Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms. + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + + [] + type labelfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the contour line width in (in px) + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the contour line width in (in px) + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + /// Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing. + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + /// Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing. + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type contour = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Transposes the z data. + static member inline transpose (value: bool) = Interop.mkPlotAttr "transpose" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline zhoverformat (value: string) = Interop.mkPlotAttr "zhoverformat" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`. + static member inline autocontour (value: bool) = Interop.mkPlotAttr "autocontour" value + /// Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing. + static member inline ncontours (value: int) = Interop.mkPlotAttr "ncontours" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module contour = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided). + [] + type xtype = + static member inline array = Interop.mkPlotAttr "xtype" "array" + static member inline scaled = Interop.mkPlotAttr "xtype" "scaled" + + /// If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided) + [] + type ytype = + static member inline array = Interop.mkPlotAttr "ytype" "array" + static member inline scaled = Interop.mkPlotAttr "ytype" "scaled" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type contours = + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*. + static member inline showlines (value: bool) = Interop.mkPlotAttr "showlines" value + /// Determines whether to label the contour lines with their values. + static member inline showlabels (value: bool) = Interop.mkPlotAttr "showlabels" value + /// Sets the contour label formatting rule using d3 formatting mini-language which is very similar to Python, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline labelformat (value: string) = Interop.mkPlotAttr "labelformat" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + + module contours = + /// If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters. + [] + type type' = + static member inline levels = Interop.mkPlotAttr "type" "levels" + static member inline constraint' = Interop.mkPlotAttr "type" "constraint" + + /// Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace. + [] + type coloring = + static member inline fill = Interop.mkPlotAttr "coloring" "fill" + static member inline heatmap = Interop.mkPlotAttr "coloring" "heatmap" + static member inline lines = Interop.mkPlotAttr "coloring" "lines" + static member inline none = Interop.mkPlotAttr "coloring" "none" + + /// Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms. + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + + [] + type labelfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + /// Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing. + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + /// Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing. + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type scatterternary = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline c (values: seq) = Interop.mkPlotAttr "c" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline c (values: seq) = Interop.mkPlotAttr "c" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline c (values: seq) = Interop.mkPlotAttr "c" values + /// Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`. + static member inline c (values: seq) = Interop.mkPlotAttr "c" values + /// The number each triplet should sum to, if only two of `a`, `b`, and `c` are provided. This overrides `ternary.sum` to normalize this specific trace, but does not affect the values displayed on the axes. 0 (or missing) means to use ternary.sum + static member inline sum (value: int) = Interop.mkPlotAttr "sum" value + /// The number each triplet should sum to, if only two of `a`, `b`, and `c` are provided. This overrides `ternary.sum` to normalize this specific trace, but does not affect the values displayed on the axes. 0 (or missing) means to use ternary.sum + static member inline sum (value: float) = Interop.mkPlotAttr "sum" value + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `a`, `b`, `c` and `text`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*. + static member inline cliponaxis (value: bool) = Interop.mkPlotAttr "cliponaxis" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*. + static member inline hoveron (values: seq) = Interop.mkPlotAttr "hoveron" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets a reference between this trace's data coordinates and a ternary subplot. If *ternary* (the default value), the data refer to `layout.ternary`. If *ternary2*, the data refer to `layout.ternary2`, and so on. + static member inline subplot (values: seq) = Interop.mkPlotAttr "subplot" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for a . + static member inline asrc (value: string) = Interop.mkPlotAttr "asrc" value + /// Sets the source reference on plot.ly for b . + static member inline bsrc (value: string) = Interop.mkPlotAttr "bsrc" value + /// Sets the source reference on plot.ly for c . + static member inline csrc (value: string) = Interop.mkPlotAttr "csrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module scatterternary = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + static member inline tonext = Interop.mkPlotAttr "fill" "tonext" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + + module line = + /// Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes. + [] + type shape = + static member inline linear = Interop.mkPlotAttr "shape" "linear" + static member inline spline = Interop.mkPlotAttr "shape" "spline" + + [] + type marker = + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: int) = Interop.mkPlotAttr "maxdisplayed" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: float) = Interop.mkPlotAttr "maxdisplayed" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type gradient = + /// Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for type . + static member inline typesrc (value: string) = Interop.mkPlotAttr "typesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module gradient = + /// Sets the type of gradient used to fill the markers + [] + type type' = + static member inline radial = Interop.mkPlotAttr "type" "radial" + static member inline horizontal = Interop.mkPlotAttr "type" "horizontal" + static member inline vertical = Interop.mkPlotAttr "type" "vertical" + static member inline none = Interop.mkPlotAttr "type" "none" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type violin = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y sample data or coordinates. See overview for more info. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x sample data or coordinates. See overview for more info. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Sets the x coordinate of the box. See overview for more info. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Sets the y coordinate of the box. See overview for more info. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the trace name. The trace name appear as the legend item and on hover. For violin traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical. Note that the trace name is also used as a default value for attribute `scalegroup` (please see its description for details). + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Sets the bandwidth used to compute the kernel density estimate. By default, the bandwidth is determined by Silverman's rule of thumb. + static member inline bandwidth (value: int) = Interop.mkPlotAttr "bandwidth" value + /// Sets the bandwidth used to compute the kernel density estimate. By default, the bandwidth is determined by Silverman's rule of thumb. + static member inline bandwidth (value: float) = Interop.mkPlotAttr "bandwidth" value + /// If there are multiple violins that should be sized according to to some metric (see `scalemode`), link them by providing a non-empty group id here shared by every trace in the same group. If a violin's `width` is undefined, `scalegroup` will default to the trace's name. In this case, violins with the same names will be linked together + static member inline scalegroup (value: string) = Interop.mkPlotAttr "scalegroup" value + /// Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*. + static member inline span (values: seq) = Interop.mkPlotAttr "span" values + /// Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*. + static member inline span (values: seq) = Interop.mkPlotAttr "span" values + /// Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*. + static member inline span (values: seq) = Interop.mkPlotAttr "span" values + /// Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*. + static member inline span (values: seq) = Interop.mkPlotAttr "span" values + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the violins. + static member inline jitter (value: int) = Interop.mkPlotAttr "jitter" value + /// Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the violins. + static member inline jitter (value: float) = Interop.mkPlotAttr "jitter" value + /// Sets the position of the sample points in relation to the violins. If *0*, the sample points are places over the center of the violins. Positive (negative) values correspond to positions to the right (left) for vertical violins and above (below) for horizontal violins. + static member inline pointpos (value: int) = Interop.mkPlotAttr "pointpos" value + /// Sets the position of the sample points in relation to the violins. If *0*, the sample points are places over the center of the violins. Positive (negative) values correspond to positions to the right (left) for vertical violins and above (below) for horizontal violins. + static member inline pointpos (value: float) = Interop.mkPlotAttr "pointpos" value + /// Sets the width of the violin in data coordinates. If *0* (default value) the width is automatically selected based on the positions of other violin traces in the same subplot. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the violin in data coordinates. If *0* (default value) the width is automatically selected based on the positions of other violin traces in the same subplot. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up. + static member inline offsetgroup (value: string) = Interop.mkPlotAttr "offsetgroup" value + /// Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently. + static member inline alignmentgroup (value: string) = Interop.mkPlotAttr "alignmentgroup" value + /// Do the hover effects highlight individual violins or sample points or the kernel density estimate or any combination of them? + static member inline hoveron (values: seq) = Interop.mkPlotAttr "hoveron" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the gap (in plot fraction) between violins of adjacent location coordinates. Has no effect on traces that have *width* set. + static member inline violingap (value: int) = Interop.mkPlotAttr "violingap" value + /// Sets the gap (in plot fraction) between violins of adjacent location coordinates. Has no effect on traces that have *width* set. + static member inline violingap (value: float) = Interop.mkPlotAttr "violingap" value + /// Sets the gap (in plot fraction) between violins of the same location coordinate. Has no effect on traces that have *width* set. + static member inline violingroupgap (value: int) = Interop.mkPlotAttr "violingroupgap" value + /// Sets the gap (in plot fraction) between violins of the same location coordinate. Has no effect on traces that have *width* set. + static member inline violingroupgap (value: float) = Interop.mkPlotAttr "violingroupgap" value + + module violin = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the orientation of the violin(s). If *v* (*h*), the distribution is visualized along the vertical (horizontal). + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Sets the metric by which the width of each violin is determined.*width* means each violin has the same (max) width*count* means the violins are scaled by the number of sample points makingup each violin. + [] + type scalemode = + static member inline width = Interop.mkPlotAttr "scalemode" "width" + static member inline count = Interop.mkPlotAttr "scalemode" "count" + + /// Sets the method by which the span in data space where the density function will be computed. *soft* means the span goes from the sample's minimum value minus two bandwidths to the sample's maximum value plus two bandwidths. *hard* means the span goes from the sample's minimum to its maximum value. For custom span settings, use mode *manual* and fill in the `span` attribute. + [] + type spanmode = + static member inline soft = Interop.mkPlotAttr "spanmode" "soft" + static member inline hard = Interop.mkPlotAttr "spanmode" "hard" + static member inline manual = Interop.mkPlotAttr "spanmode" "manual" + + /// If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the violins are shown with no sample points + [] + type points = + static member inline all = Interop.mkPlotAttr "points" "all" + static member inline outliers = Interop.mkPlotAttr "points" "outliers" + static member inline suspectedoutliers = Interop.mkPlotAttr "points" "suspectedoutliers" + static member inline false' = Interop.mkPlotAttr "points" false + + /// Determines on which side of the position value the density function making up one half of a violin is plotted. Useful when comparing two violin traces under *overlay* mode, where one trace has `side` set to *positive* and the other to *negative*. + [] + type side = + static member inline both = Interop.mkPlotAttr "side" "both" + static member inline positive = Interop.mkPlotAttr "side" "positive" + static member inline negative = Interop.mkPlotAttr "side" "negative" + + /// Determines how violins at the same location coordinate are displayed on the graph. If *group*, the violins are plotted next to one another centered around the shared location. If *overlay*, the violins are plotted over one another, you might need to set *opacity* to see them multiple violins. Has no effect on traces that have *width* set. + [] + type violinmode = + static member inline group = Interop.mkPlotAttr "violinmode" "group" + static member inline overlay = Interop.mkPlotAttr "violinmode" "overlay" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the color of line bounding the violin(s). + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of line bounding the violin(s). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of line bounding the violin(s). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type marker = + /// Sets the color of the outlier sample points. + static member inline outliercolor (value: string) = Interop.mkPlotAttr "outliercolor" value + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + [] + type line = + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the border line color of the outlier sample points. Defaults to marker.color + static member inline outliercolor (value: string) = Interop.mkPlotAttr "outliercolor" value + /// Sets the border line width (in px) of the outlier sample points. + static member inline outlierwidth (value: int) = Interop.mkPlotAttr "outlierwidth" value + /// Sets the border line width (in px) of the outlier sample points. + static member inline outlierwidth (value: float) = Interop.mkPlotAttr "outlierwidth" value + + [] + type box = + /// Determines if an miniature box plot is drawn inside the violins. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets the width of the inner box plots relative to the violins' width. For example, with 1, the inner box plots are as wide as the violins. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the inner box plots relative to the violins' width. For example, with 1, the inner box plots are as wide as the violins. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the inner box plot fill color. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + + module box = + [] + type line = + /// Sets the inner box plot bounding line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the inner box plot bounding line width. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the inner box plot bounding line width. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type meanline = + /// Determines if a line corresponding to the sample's mean is shown inside the violins. If `box.visible` is turned on, the mean line is drawn inside the inner box. Otherwise, the mean line is drawn from one side of the violin to other. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets the mean line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the mean line width. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the mean line width. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type funnel = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `percentInitial`, `percentPrevious` and `percentTotal`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Determines which trace information appear on the graph. In the case of having multiple funnels, percentages & totals are computed separately (per trace). + static member inline textinfo (values: seq) = Interop.mkPlotAttr "textinfo" values + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `percentInitial`, `percentPrevious`, `percentTotal`, `label` and `value`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars. + static member inline textangle (value: int) = Interop.mkPlotAttr "textangle" value + /// Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars. + static member inline textangle (value: float) = Interop.mkPlotAttr "textangle" value + /// Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*. + static member inline cliponaxis (value: bool) = Interop.mkPlotAttr "cliponaxis" value + /// Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead. + static member inline offset (value: int) = Interop.mkPlotAttr "offset" value + /// Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead. + static member inline offset (value: float) = Interop.mkPlotAttr "offset" value + /// Sets the bar width (in position axis units). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the bar width (in position axis units). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up. + static member inline offsetgroup (value: string) = Interop.mkPlotAttr "offsetgroup" value + /// Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently. + static member inline alignmentgroup (value: string) = Interop.mkPlotAttr "alignmentgroup" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline funnelgap (value: int) = Interop.mkPlotAttr "funnelgap" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline funnelgap (value: float) = Interop.mkPlotAttr "funnelgap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline funnelgroupgap (value: int) = Interop.mkPlotAttr "funnelgroupgap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline funnelgroupgap (value: float) = Interop.mkPlotAttr "funnelgroupgap" value + + module funnel = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. + [] + type textposition = + static member inline inside = Interop.mkPlotAttr "textposition" "inside" + static member inline outside = Interop.mkPlotAttr "textposition" "outside" + static member inline auto = Interop.mkPlotAttr "textposition" "auto" + static member inline none = Interop.mkPlotAttr "textposition" "none" + + /// Determines if texts are kept at center or start/end points in `textposition` *inside* mode. + [] + type insidetextanchor = + static member inline end' = Interop.mkPlotAttr "insidetextanchor" "end" + static member inline middle = Interop.mkPlotAttr "insidetextanchor" "middle" + static member inline start = Interop.mkPlotAttr "insidetextanchor" "start" + + /// Constrain the size of text inside or outside a bar to be no larger than the bar itself. + [] + type constraintext = + static member inline inside = Interop.mkPlotAttr "constraintext" "inside" + static member inline outside = Interop.mkPlotAttr "constraintext" "outside" + static member inline both = Interop.mkPlotAttr "constraintext" "both" + static member inline none = Interop.mkPlotAttr "constraintext" "none" + + /// Sets the orientation of the funnels. With *v* (*h*), the value of the each bar spans along the vertical (horizontal). By default funnels are tend to be oriented horizontally; unless only *y* array is presented or orientation is set to *v*. Also regarding graphs including only 'horizontal' funnels, *autorange* on the *y-axis* are set to *reversed*. + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars. + [] + type funnelmode = + static member inline stack = Interop.mkPlotAttr "funnelmode" "stack" + static member inline group = Interop.mkPlotAttr "funnelmode" "group" + static member inline overlay = Interop.mkPlotAttr "funnelmode" "overlay" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type insidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type outsidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type marker = + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the bars. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the bars. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type connector = + /// Sets the fill color. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines if connector regions and lines are drawn. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + + module connector = + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + + [] + type waterfall = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// An array containing types of values. By default the values are considered as 'relative'. However; it is possible to use 'total' to compute the sums. Also 'absolute' could be applied to reset the computed total or to declare an initial value where needed. + static member inline measure (values: seq) = Interop.mkPlotAttr "measure" values + /// An array containing types of values. By default the values are considered as 'relative'. However; it is possible to use 'total' to compute the sums. Also 'absolute' could be applied to reset the computed total or to declare an initial value where needed. + static member inline measure (values: seq) = Interop.mkPlotAttr "measure" values + /// An array containing types of values. By default the values are considered as 'relative'. However; it is possible to use 'total' to compute the sums. Also 'absolute' could be applied to reset the computed total or to declare an initial value where needed. + static member inline measure (values: seq) = Interop.mkPlotAttr "measure" values + /// An array containing types of values. By default the values are considered as 'relative'. However; it is possible to use 'total' to compute the sums. Also 'absolute' could be applied to reset the computed total or to declare an initial value where needed. + static member inline measure (values: seq) = Interop.mkPlotAttr "measure" values + /// Sets where the bar base is drawn (in position axis units). + static member inline base' (value: int) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in position axis units). + static member inline base' (value: float) = Interop.mkPlotAttr "base" value + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `initial`, `delta` and `final`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Determines which trace information appear on the graph. In the case of having multiple waterfalls, totals are computed separately (per trace). + static member inline textinfo (values: seq) = Interop.mkPlotAttr "textinfo" values + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `initial`, `delta`, `final` and `label`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars. + static member inline textangle (value: int) = Interop.mkPlotAttr "textangle" value + /// Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars. + static member inline textangle (value: float) = Interop.mkPlotAttr "textangle" value + /// Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*. + static member inline cliponaxis (value: bool) = Interop.mkPlotAttr "cliponaxis" value + /// Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead. + static member inline offset (value: int) = Interop.mkPlotAttr "offset" value + /// Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead. + static member inline offset (value: float) = Interop.mkPlotAttr "offset" value + /// Sets the bar width (in position axis units). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the bar width (in position axis units). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up. + static member inline offsetgroup (value: string) = Interop.mkPlotAttr "offsetgroup" value + /// Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently. + static member inline alignmentgroup (value: string) = Interop.mkPlotAttr "alignmentgroup" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for measure . + static member inline measuresrc (value: string) = Interop.mkPlotAttr "measuresrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for offset . + static member inline offsetsrc (value: string) = Interop.mkPlotAttr "offsetsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline waterfallgap (value: int) = Interop.mkPlotAttr "waterfallgap" value + /// Sets the gap (in plot fraction) between bars of adjacent location coordinates. + static member inline waterfallgap (value: float) = Interop.mkPlotAttr "waterfallgap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline waterfallgroupgap (value: int) = Interop.mkPlotAttr "waterfallgroupgap" value + /// Sets the gap (in plot fraction) between bars of the same location coordinate. + static member inline waterfallgroupgap (value: float) = Interop.mkPlotAttr "waterfallgroupgap" value + + module waterfall = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside. + [] + type textposition = + static member inline inside = Interop.mkPlotAttr "textposition" "inside" + static member inline outside = Interop.mkPlotAttr "textposition" "outside" + static member inline auto = Interop.mkPlotAttr "textposition" "auto" + static member inline none = Interop.mkPlotAttr "textposition" "none" + + /// Determines if texts are kept at center or start/end points in `textposition` *inside* mode. + [] + type insidetextanchor = + static member inline end' = Interop.mkPlotAttr "insidetextanchor" "end" + static member inline middle = Interop.mkPlotAttr "insidetextanchor" "middle" + static member inline start = Interop.mkPlotAttr "insidetextanchor" "start" + + /// Constrain the size of text inside or outside a bar to be no larger than the bar itself. + [] + type constraintext = + static member inline inside = Interop.mkPlotAttr "constraintext" "inside" + static member inline outside = Interop.mkPlotAttr "constraintext" "outside" + static member inline both = Interop.mkPlotAttr "constraintext" "both" + static member inline none = Interop.mkPlotAttr "constraintext" "none" + + /// Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal). + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Determines how bars at the same location coordinate are displayed on the graph. With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars. + [] + type waterfallmode = + static member inline group = Interop.mkPlotAttr "waterfallmode" "group" + static member inline overlay = Interop.mkPlotAttr "waterfallmode" "overlay" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type insidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type outsidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module increasing = + [] + type marker = + /// Sets the marker color of all increasing values. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module marker = + [] + type line = + /// Sets the line color of all increasing values. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width of all increasing values. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width of all increasing values. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + module decreasing = + [] + type marker = + /// Sets the marker color of all decreasing values. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module marker = + [] + type line = + /// Sets the line color of all decreasing values. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width of all decreasing values. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width of all decreasing values. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + module totals = + [] + type marker = + /// Sets the marker color of all intermediate sums and total values. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module marker = + [] + type line = + /// Sets the line color of all intermediate sums and total values. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width of all intermediate sums and total values. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width of all intermediate sums and total values. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type connector = + /// Determines if connector lines are drawn. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + + module connector = + /// Sets the shape of connector lines. + [] + type mode = + static member inline spanning = Interop.mkPlotAttr "mode" "spanning" + static member inline between = Interop.mkPlotAttr "mode" "between" + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + + [] + type pie = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step. + static member inline label0 (value: int) = Interop.mkPlotAttr "label0" value + /// Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step. + static member inline label0 (value: float) = Interop.mkPlotAttr "label0" value + /// Sets the label step. See `label0` for more info. + static member inline dlabel (value: int) = Interop.mkPlotAttr "dlabel" value + /// Sets the label step. See `label0` for more info. + static member inline dlabel (value: float) = Interop.mkPlotAttr "dlabel" value + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// If there are multiple pie charts that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group. + static member inline scalegroup (value: string) = Interop.mkPlotAttr "scalegroup" value + /// Determines which trace information appear on the graph. + static member inline textinfo (values: seq) = Interop.mkPlotAttr "textinfo" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `percent` and `text`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `percent` and `text`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets the fraction of the radius to cut out of the pie. Use this to make a donut chart. + static member inline hole (value: int) = Interop.mkPlotAttr "hole" value + /// Sets the fraction of the radius to cut out of the pie. Use this to make a donut chart. + static member inline hole (value: float) = Interop.mkPlotAttr "hole" value + /// Determines whether or not the sectors are reordered from largest to smallest. + static member inline sort (value: bool) = Interop.mkPlotAttr "sort" value + /// Instead of the first slice starting at 12 o'clock, rotate to some other angle. + static member inline rotation (value: int) = Interop.mkPlotAttr "rotation" value + /// Instead of the first slice starting at 12 o'clock, rotate to some other angle. + static member inline rotation (value: float) = Interop.mkPlotAttr "rotation" value + /// Sets the fraction of larger radius to pull the sectors out from the center. This can be a constant to pull all slices apart from each other equally or an array to highlight one or more slices. + static member inline pull (value: int) = Interop.mkPlotAttr "pull" value + /// Sets the fraction of larger radius to pull the sectors out from the center. This can be a constant to pull all slices apart from each other equally or an array to highlight one or more slices. + static member inline pull (value: float) = Interop.mkPlotAttr "pull" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for labels . + static member inline labelssrc (value: string) = Interop.mkPlotAttr "labelssrc" value + /// Sets the source reference on plot.ly for values . + static member inline valuessrc (value: string) = Interop.mkPlotAttr "valuessrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for pull . + static member inline pullsrc (value: string) = Interop.mkPlotAttr "pullsrc" value + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// Sets the default pie slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendpiecolors`. + static member inline piecolorway (values: seq) = Interop.mkPlotAttr "piecolorway" values + /// If `true`, the pie slice colors (whether given by `piecolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended. + static member inline extendpiecolors (value: bool) = Interop.mkPlotAttr "extendpiecolors" value + /// Sets the source reference on plot.ly for hiddenlabels . + static member inline hiddenlabelssrc (value: string) = Interop.mkPlotAttr "hiddenlabelssrc" value + + module pie = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the location of the `textinfo`. + [] + type textposition = + static member inline inside = Interop.mkPlotAttr "textposition" "inside" + static member inline outside = Interop.mkPlotAttr "textposition" "outside" + static member inline auto = Interop.mkPlotAttr "textposition" "auto" + static member inline none = Interop.mkPlotAttr "textposition" "none" + + /// Specifies the direction at which succeeding sectors follow one another. + [] + type direction = + static member inline clockwise = Interop.mkPlotAttr "direction" "clockwise" + static member inline counterclockwise = Interop.mkPlotAttr "direction" "counterclockwise" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the source reference on plot.ly for colors . + static member inline colorssrc (value: string) = Interop.mkPlotAttr "colorssrc" value + + module marker = + [] + type line = + /// Sets the color of the line enclosing each sector. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type insidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type outsidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type title = + /// Sets the title of the chart. If it is empty, no title is displayed. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Specifies the location of the `title`. Note that the title's position used to be set by the now deprecated `titleposition` attribute. + [] + type position = + static member inline topLeft = Interop.mkPlotAttr "position" "top left" + static member inline topCenter = Interop.mkPlotAttr "position" "top center" + static member inline topRight = Interop.mkPlotAttr "position" "top right" + static member inline middleCenter = Interop.mkPlotAttr "position" "middle center" + static member inline bottomLeft = Interop.mkPlotAttr "position" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "position" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "position" "bottom right" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type domain = + /// Sets the horizontal domain of this pie trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this pie trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this pie trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this pie trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this pie trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this pie trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type sunburst = + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0. + static member inline count (values: seq) = Interop.mkPlotAttr "count" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: bool) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: string) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: int) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: float) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy. + static member inline maxdepth (value: int) = Interop.mkPlotAttr "maxdepth" value + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Determines which trace information appear on the graph. + static member inline textinfo (values: seq) = Interop.mkPlotAttr "textinfo" values + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for labels . + static member inline labelssrc (value: string) = Interop.mkPlotAttr "labelssrc" value + /// Sets the source reference on plot.ly for parents . + static member inline parentssrc (value: string) = Interop.mkPlotAttr "parentssrc" value + /// Sets the source reference on plot.ly for values . + static member inline valuessrc (value: string) = Interop.mkPlotAttr "valuessrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the default sunburst slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendsunburstcolors`. + static member inline sunburstcolorway (values: seq) = Interop.mkPlotAttr "sunburstcolorway" values + /// If `true`, the sunburst slice colors (whether given by `sunburstcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended. + static member inline extendsunburstcolors (value: bool) = Interop.mkPlotAttr "extendsunburstcolors" value + + module sunburst = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves. + [] + type branchvalues = + static member inline remainder = Interop.mkPlotAttr "branchvalues" "remainder" + static member inline total = Interop.mkPlotAttr "branchvalues" "total" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colorsis set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if colorsis set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colorsis set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if colorsis set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if colorsis set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for colors . + static member inline colorssrc (value: string) = Interop.mkPlotAttr "colorssrc" value + + module marker = + [] + type line = + /// Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type leaf = + /// Sets the opacity of the leaves. With colorscale it is defaulted to 1; otherwise it is defaulted to 0.7 + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the leaves. With colorscale it is defaulted to 1; otherwise it is defaulted to 0.7 + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type insidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type outsidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type domain = + /// Sets the horizontal domain of this sunburst trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this sunburst trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this sunburst trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this sunburst trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this sunburst trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this sunburst trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type treemap = + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the labels of each of the sectors. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique. + static member inline parents (values: seq) = Interop.mkPlotAttr "parents" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0. + static member inline count (values: seq) = Interop.mkPlotAttr "count" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: bool) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: string) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: int) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (value: float) = Interop.mkPlotAttr "level" value + /// Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`. + static member inline level (values: seq) = Interop.mkPlotAttr "level" values + /// Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy. + static member inline maxdepth (value: int) = Interop.mkPlotAttr "maxdepth" value + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Determines which trace information appear on the graph. + static member inline textinfo (values: seq) = Interop.mkPlotAttr "textinfo" values + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for labels . + static member inline labelssrc (value: string) = Interop.mkPlotAttr "labelssrc" value + /// Sets the source reference on plot.ly for parents . + static member inline parentssrc (value: string) = Interop.mkPlotAttr "parentssrc" value + /// Sets the source reference on plot.ly for values . + static member inline valuessrc (value: string) = Interop.mkPlotAttr "valuessrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the default treemap slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendtreemapcolors`. + static member inline treemapcolorway (values: seq) = Interop.mkPlotAttr "treemapcolorway" values + /// If `true`, the treemap slice colors (whether given by `treemapcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended. + static member inline extendtreemapcolors (value: bool) = Interop.mkPlotAttr "extendtreemapcolors" value + + module treemap = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves. + [] + type branchvalues = + static member inline remainder = Interop.mkPlotAttr "branchvalues" "remainder" + static member inline total = Interop.mkPlotAttr "branchvalues" "total" + + /// Sets the positions of the `text` elements. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type tiling = + /// When using *squarify* `packing` algorithm, according to https://github.com/d3/d3-hierarchy/blob/master/README.md#squarify_ratio this option specifies the desired aspect ratio of the generated rectangles. The ratio must be specified as a number greater than or equal to one. Note that the orientation of the generated rectangles (tall or wide) is not implied by the ratio; for example, a ratio of two will attempt to produce a mixture of rectangles whose width:height ratio is either 2:1 or 1:2. When using *squarify*, unlike d3 which uses the Golden Ratio i.e. 1.618034, Plotly applies 1 to increase squares in treemap layouts. + static member inline squarifyratio (value: int) = Interop.mkPlotAttr "squarifyratio" value + /// When using *squarify* `packing` algorithm, according to https://github.com/d3/d3-hierarchy/blob/master/README.md#squarify_ratio this option specifies the desired aspect ratio of the generated rectangles. The ratio must be specified as a number greater than or equal to one. Note that the orientation of the generated rectangles (tall or wide) is not implied by the ratio; for example, a ratio of two will attempt to produce a mixture of rectangles whose width:height ratio is either 2:1 or 1:2. When using *squarify*, unlike d3 which uses the Golden Ratio i.e. 1.618034, Plotly applies 1 to increase squares in treemap layouts. + static member inline squarifyratio (value: float) = Interop.mkPlotAttr "squarifyratio" value + /// Determines if the positions obtained from solver are flipped on each axis. + static member inline flip (values: seq) = Interop.mkPlotAttr "flip" values + /// Sets the inner padding (in px). + static member inline pad (value: int) = Interop.mkPlotAttr "pad" value + /// Sets the inner padding (in px). + static member inline pad (value: float) = Interop.mkPlotAttr "pad" value + + module tiling = + /// Determines d3 treemap solver. For more info please refer to https://github.com/d3/d3-hierarchy#treemap-tiling + [] + type packing = + static member inline squarify = Interop.mkPlotAttr "packing" "squarify" + static member inline binary = Interop.mkPlotAttr "packing" "binary" + static member inline dice = Interop.mkPlotAttr "packing" "dice" + static member inline slice = Interop.mkPlotAttr "packing" "slice" + static member inline sliceDice = Interop.mkPlotAttr "packing" "slice-dice" + static member inline diceSlice = Interop.mkPlotAttr "packing" "dice-slice" + + [] + type marker = + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colorsis set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if colorsis set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colorsis set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if colorsis set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if colorsis set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for colors . + static member inline colorssrc (value: string) = Interop.mkPlotAttr "colorssrc" value + + module marker = + /// Determines if the sector colors are faded towards the background from the leaves up to the headers. This option is unavailable when a `colorscale` is present, defaults to false when `marker.colors` is set, but otherwise defaults to true. When set to *reversed*, the fading direction is inverted, that is the top elements within hierarchy are drawn with fully saturated colors while the leaves are faded towards the background color. + [] + type depthfade = + static member inline true' = Interop.mkPlotAttr "depthfade" true + static member inline false' = Interop.mkPlotAttr "depthfade" false + static member inline reversed = Interop.mkPlotAttr "depthfade" "reversed" + + [] + type pad = + /// Sets the padding form the top (in px). + static member inline t (value: int) = Interop.mkPlotAttr "t" value + /// Sets the padding form the top (in px). + static member inline t (value: float) = Interop.mkPlotAttr "t" value + /// Sets the padding form the left (in px). + static member inline l (value: int) = Interop.mkPlotAttr "l" value + /// Sets the padding form the left (in px). + static member inline l (value: float) = Interop.mkPlotAttr "l" value + /// Sets the padding form the right (in px). + static member inline r (value: int) = Interop.mkPlotAttr "r" value + /// Sets the padding form the right (in px). + static member inline r (value: float) = Interop.mkPlotAttr "r" value + /// Sets the padding form the bottom (in px). + static member inline b (value: int) = Interop.mkPlotAttr "b" value + /// Sets the padding form the bottom (in px). + static member inline b (value: float) = Interop.mkPlotAttr "b" value + + [] + type line = + /// Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type pathbar = + /// Determines if the path bar is drawn i.e. outside the trace `domain` and with one pixel gap. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used with 3 pixles extra padding on each side. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used with 3 pixles extra padding on each side. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + + module pathbar = + /// Determines on which side of the the treemap the `pathbar` should be presented. + [] + type side = + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + /// Determines which shape is used for edges between `barpath` labels. + [] + type edgeshape = + static member inline pointedRight = Interop.mkPlotAttr "edgeshape" ">" + static member inline pointedLeft = Interop.mkPlotAttr "edgeshape" "<" + static member inline straight = Interop.mkPlotAttr "edgeshape" "|" + static member inline rightSlant = Interop.mkPlotAttr "edgeshape" "/" + static member inline leftSlant = Interop.mkPlotAttr "edgeshape" "\\" + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type insidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type outsidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type domain = + /// Sets the horizontal domain of this treemap trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this treemap trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this treemap trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this treemap trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this treemap trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this treemap trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type funnelarea = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label. + static member inline labels (values: seq) = Interop.mkPlotAttr "labels" values + /// Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step. + static member inline label0 (value: int) = Interop.mkPlotAttr "label0" value + /// Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step. + static member inline label0 (value: float) = Interop.mkPlotAttr "label0" value + /// Sets the label step. See `label0` for more info. + static member inline dlabel (value: int) = Interop.mkPlotAttr "dlabel" value + /// Sets the label step. See `label0` for more info. + static member inline dlabel (value: float) = Interop.mkPlotAttr "dlabel" value + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the values of the sectors. If omitted, we count occurrences of each label. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// If there are multiple funnelareas that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group. + static member inline scalegroup (value: string) = Interop.mkPlotAttr "scalegroup" value + /// Determines which trace information appear on the graph. + static member inline textinfo (values: seq) = Interop.mkPlotAttr "textinfo" values + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `text` and `percent`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `text` and `percent`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the ratio between height and width + static member inline aspectratio (value: int) = Interop.mkPlotAttr "aspectratio" value + /// Sets the ratio between height and width + static member inline aspectratio (value: float) = Interop.mkPlotAttr "aspectratio" value + /// Sets the ratio between bottom length and maximum top length. + static member inline baseratio (value: int) = Interop.mkPlotAttr "baseratio" value + /// Sets the ratio between bottom length and maximum top length. + static member inline baseratio (value: float) = Interop.mkPlotAttr "baseratio" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for labels . + static member inline labelssrc (value: string) = Interop.mkPlotAttr "labelssrc" value + /// Sets the source reference on plot.ly for values . + static member inline valuessrc (value: string) = Interop.mkPlotAttr "valuessrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts + static member inline hiddenlabels (values: seq) = Interop.mkPlotAttr "hiddenlabels" values + /// Sets the default funnelarea slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendfunnelareacolors`. + static member inline funnelareacolorway (values: seq) = Interop.mkPlotAttr "funnelareacolorway" values + /// If `true`, the funnelarea slice colors (whether given by `funnelareacolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended. + static member inline extendfunnelareacolors (value: bool) = Interop.mkPlotAttr "extendfunnelareacolors" value + /// Sets the source reference on plot.ly for hiddenlabels . + static member inline hiddenlabelssrc (value: string) = Interop.mkPlotAttr "hiddenlabelssrc" value + + module funnelarea = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the location of the `textinfo`. + [] + type textposition = + static member inline inside = Interop.mkPlotAttr "textposition" "inside" + static member inline none = Interop.mkPlotAttr "textposition" "none" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors. + static member inline colors (values: seq) = Interop.mkPlotAttr "colors" values + /// Sets the source reference on plot.ly for colors . + static member inline colorssrc (value: string) = Interop.mkPlotAttr "colorssrc" value + + module marker = + [] + type line = + /// Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type insidetextfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type title = + /// Sets the title of the chart. If it is empty, no title is displayed. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Specifies the location of the `title`. Note that the title's position used to be set by the now deprecated `titleposition` attribute. + [] + type position = + static member inline topLeft = Interop.mkPlotAttr "position" "top left" + static member inline topCenter = Interop.mkPlotAttr "position" "top center" + static member inline topRight = Interop.mkPlotAttr "position" "top right" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type domain = + /// Sets the horizontal domain of this funnelarea trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this funnelarea trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this funnelarea trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this funnelarea trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this funnelarea trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this funnelarea trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type scatter3d = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets the surface fill color. + static member inline surfacecolor (value: string) = Interop.mkPlotAttr "surfacecolor" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on. + static member inline scene (values: seq) = Interop.mkPlotAttr "scene" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module scatter3d = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// If *-1*, the scatter points are not fill with a surface If *0*, *1*, *2*, the scatter points are filled with a Delaunay surface about the x, y, z respectively. + [] + type surfaceaxis = + static member inline neg1 = Interop.mkPlotAttr "surfaceaxis" -1 + static member inline _0 = Interop.mkPlotAttr "surfaceaxis" 0 + static member inline _1 = Interop.mkPlotAttr "surfaceaxis" 1 + static member inline _2 = Interop.mkPlotAttr "surfaceaxis" 2 + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + /// Sets the calendar system to use with `z` date data. + [] + type zcalendar = + static member inline gregorian = Interop.mkPlotAttr "zcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "zcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "zcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "zcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "zcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "zcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "zcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "zcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "zcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "zcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "zcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "zcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "zcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "zcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "zcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "zcalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + module projection = + [] + type x = + /// Sets whether or not projections are shown along the x axis. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the projection color. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the projection color. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the scale factor determining the size of the projection marker points. + static member inline scale (value: int) = Interop.mkPlotAttr "scale" value + /// Sets the scale factor determining the size of the projection marker points. + static member inline scale (value: float) = Interop.mkPlotAttr "scale" value + + [] + type y = + /// Sets whether or not projections are shown along the y axis. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the projection color. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the projection color. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the scale factor determining the size of the projection marker points. + static member inline scale (value: int) = Interop.mkPlotAttr "scale" value + /// Sets the scale factor determining the size of the projection marker points. + static member inline scale (value: float) = Interop.mkPlotAttr "scale" value + + [] + type z = + /// Sets whether or not projections are shown along the z axis. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the projection color. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the projection color. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the scale factor determining the size of the projection marker points. + static member inline scale (value: int) = Interop.mkPlotAttr "scale" value + /// Sets the scale factor determining the size of the projection marker points. + static member inline scale (value: float) = Interop.mkPlotAttr "scale" value + + [] + type line = + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets thelinecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color`is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `line.color`is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module line = + /// Sets the dash style of the lines. + [] + type dash = + static member inline solid = Interop.mkPlotAttr "dash" "solid" + static member inline dot = Interop.mkPlotAttr "dash" "dot" + static member inline dash = Interop.mkPlotAttr "dash" "dash" + static member inline longdash = Interop.mkPlotAttr "dash" "longdash" + static member inline dashdot = Interop.mkPlotAttr "dash" "dashdot" + static member inline longdashdot = Interop.mkPlotAttr "dash" "longdashdot" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type marker = + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets the marker opacity. Note that the marker opacity for scatter3d traces must be a scalar value for performance reasons. To set a blending opacity value (i.e. which is not transparent), set *marker.color* to an rgba color and use its alpha channel. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. Note that the marker opacity for scatter3d traces must be a scalar value for performance reasons. To set a blending opacity value (i.e. which is not transparent), set *marker.color* to an rgba color and use its alpha channel. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module marker = + /// Sets the marker symbol type. + [] + type symbol = + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline x = Interop.mkPlotAttr "symbol" "x" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type textfont = + static member inline color (value: string) = Interop.mkPlotAttr "color" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + + [] + type error_x = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + static member inline copy_zstyle (value: bool) = Interop.mkPlotAttr "copy_zstyle" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_x = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type error_y = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + static member inline copy_zstyle (value: bool) = Interop.mkPlotAttr "copy_zstyle" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_y = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type error_z = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_z = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type surface = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the text elements associated with each z value. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the surface color values, used for setting a color scale independent of `z`. + static member inline surfacecolor (values: seq) = Interop.mkPlotAttr "surfacecolor" values + /// Sets the surface color values, used for setting a color scale independent of `z`. + static member inline surfacecolor (values: seq) = Interop.mkPlotAttr "surfacecolor" values + /// Sets the surface color values, used for setting a color scale independent of `z`. + static member inline surfacecolor (values: seq) = Interop.mkPlotAttr "surfacecolor" values + /// Sets the surface color values, used for setting a color scale independent of `z`. + static member inline surfacecolor (values: seq) = Interop.mkPlotAttr "surfacecolor" values + /// Determines whether or not the color domain is computed with respect to the input data (here z or surfacecolor) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as z or surfacecolor. Has no effect when `cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as z or surfacecolor. Has no effect when `cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Determines whether or not a surface is drawn. For example, set `hidesurface` to *false* `contours.x.show` to *true* and `contours.y.show` to *true* to draw a wire frame plot. + static member inline hidesurface (value: bool) = Interop.mkPlotAttr "hidesurface" value + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on. + static member inline scene (values: seq) = Interop.mkPlotAttr "scene" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for surfacecolor . + static member inline surfacecolorsrc (value: string) = Interop.mkPlotAttr "surfacecolorsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module surface = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + /// Sets the calendar system to use with `z` date data. + [] + type zcalendar = + static member inline gregorian = Interop.mkPlotAttr "zcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "zcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "zcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "zcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "zcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "zcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "zcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "zcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "zcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "zcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "zcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "zcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "zcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "zcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "zcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "zcalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module contours = + [] + type x = + /// Determines whether or not contour lines about the x dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the color of the contour lines. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*. + static member inline usecolormap (value: bool) = Interop.mkPlotAttr "usecolormap" value + /// Sets the width of the contour lines. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the contour lines. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Determines whether or not contour lines about the x dimension are highlighted on hover. + static member inline highlight (value: bool) = Interop.mkPlotAttr "highlight" value + /// Sets the color of the highlighted contour lines. + static member inline highlightcolor (value: string) = Interop.mkPlotAttr "highlightcolor" value + /// Sets the width of the highlighted contour lines. + static member inline highlightwidth (value: int) = Interop.mkPlotAttr "highlightwidth" value + /// Sets the width of the highlighted contour lines. + static member inline highlightwidth (value: float) = Interop.mkPlotAttr "highlightwidth" value + + module x = + [] + type project = + /// Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline x (value: bool) = Interop.mkPlotAttr "x" value + /// Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline y (value: bool) = Interop.mkPlotAttr "y" value + /// Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline z (value: bool) = Interop.mkPlotAttr "z" value + + [] + type y = + /// Determines whether or not contour lines about the y dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the color of the contour lines. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*. + static member inline usecolormap (value: bool) = Interop.mkPlotAttr "usecolormap" value + /// Sets the width of the contour lines. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the contour lines. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Determines whether or not contour lines about the y dimension are highlighted on hover. + static member inline highlight (value: bool) = Interop.mkPlotAttr "highlight" value + /// Sets the color of the highlighted contour lines. + static member inline highlightcolor (value: string) = Interop.mkPlotAttr "highlightcolor" value + /// Sets the width of the highlighted contour lines. + static member inline highlightwidth (value: int) = Interop.mkPlotAttr "highlightwidth" value + /// Sets the width of the highlighted contour lines. + static member inline highlightwidth (value: float) = Interop.mkPlotAttr "highlightwidth" value + + module y = + [] + type project = + /// Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline x (value: bool) = Interop.mkPlotAttr "x" value + /// Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline y (value: bool) = Interop.mkPlotAttr "y" value + /// Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline z (value: bool) = Interop.mkPlotAttr "z" value + + [] + type z = + /// Determines whether or not contour lines about the z dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets the color of the contour lines. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*. + static member inline usecolormap (value: bool) = Interop.mkPlotAttr "usecolormap" value + /// Sets the width of the contour lines. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the contour lines. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Determines whether or not contour lines about the z dimension are highlighted on hover. + static member inline highlight (value: bool) = Interop.mkPlotAttr "highlight" value + /// Sets the color of the highlighted contour lines. + static member inline highlightcolor (value: string) = Interop.mkPlotAttr "highlightcolor" value + /// Sets the width of the highlighted contour lines. + static member inline highlightwidth (value: int) = Interop.mkPlotAttr "highlightwidth" value + /// Sets the width of the highlighted contour lines. + static member inline highlightwidth (value: float) = Interop.mkPlotAttr "highlightwidth" value + + module z = + [] + type project = + /// Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline x (value: bool) = Interop.mkPlotAttr "x" value + /// Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline y (value: bool) = Interop.mkPlotAttr "y" value + /// Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence. + static member inline z (value: bool) = Interop.mkPlotAttr "z" value + + [] + type lightposition = + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: int) = Interop.mkPlotAttr "z" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type lighting = + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: int) = Interop.mkPlotAttr "ambient" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: float) = Interop.mkPlotAttr "ambient" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: int) = Interop.mkPlotAttr "diffuse" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: float) = Interop.mkPlotAttr "diffuse" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: int) = Interop.mkPlotAttr "specular" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: float) = Interop.mkPlotAttr "specular" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: int) = Interop.mkPlotAttr "roughness" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: float) = Interop.mkPlotAttr "roughness" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: int) = Interop.mkPlotAttr "fresnel" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: float) = Interop.mkPlotAttr "fresnel" value + + [] + type isosurface = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the minimum boundary for iso-surface plot. + static member inline isomin (value: int) = Interop.mkPlotAttr "isomin" value + /// Sets the minimum boundary for iso-surface plot. + static member inline isomin (value: float) = Interop.mkPlotAttr "isomin" value + /// Sets the maximum boundary for iso-surface plot. + static member inline isomax (value: int) = Interop.mkPlotAttr "isomax" value + /// Sets the maximum boundary for iso-surface plot. + static member inline isomax (value: float) = Interop.mkPlotAttr "isomax" value + /// Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections. + static member inline flatshading (value: bool) = Interop.mkPlotAttr "flatshading" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on. + static member inline scene (values: seq) = Interop.mkPlotAttr "scene" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for value . + static member inline valuesrc (value: string) = Interop.mkPlotAttr "valuesrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module isosurface = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type surface = + /// Hides/displays surfaces between minimum and maximum iso-values. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn. + static member inline count (value: int) = Interop.mkPlotAttr "count" value + /// Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest. + static member inline pattern (values: seq) = Interop.mkPlotAttr "pattern" values + + [] + type spaceframe = + /// Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `spaceframe` elements. The default fill value is 0.15 meaning that only 15% of the area of every faces of tetras would be shaded. Applying a greater `fill` ratio would allow the creation of stronger elements or could be sued to have entirely closed areas (in case of using 1). + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `spaceframe` elements. The default fill value is 0.15 meaning that only 15% of the area of every faces of tetras would be shaded. Applying a greater `fill` ratio would allow the creation of stronger elements or could be sued to have entirely closed areas (in case of using 1). + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + module slices = + [] + type x = + /// Determines whether or not slice planes about the x dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + + [] + type y = + /// Determines whether or not slice planes about the y dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + + [] + type z = + /// Determines whether or not slice planes about the z dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + + module caps = + [] + type x = + /// Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + [] + type y = + /// Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + [] + type z = + /// Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type lightposition = + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: int) = Interop.mkPlotAttr "z" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type lighting = + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: int) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: float) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: int) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: float) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: int) = Interop.mkPlotAttr "ambient" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: float) = Interop.mkPlotAttr "ambient" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: int) = Interop.mkPlotAttr "diffuse" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: float) = Interop.mkPlotAttr "diffuse" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: int) = Interop.mkPlotAttr "specular" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: float) = Interop.mkPlotAttr "specular" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: int) = Interop.mkPlotAttr "roughness" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: float) = Interop.mkPlotAttr "roughness" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: int) = Interop.mkPlotAttr "fresnel" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: float) = Interop.mkPlotAttr "fresnel" value + + [] + type contour = + /// Sets whether or not dynamic contours are shown on hover + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the color of the contour lines. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width of the contour lines. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the contour lines. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type volume = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices on X axis. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices on Y axis. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices on Z axis. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the 4th dimension (value) of the vertices. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the minimum boundary for iso-surface plot. + static member inline isomin (value: int) = Interop.mkPlotAttr "isomin" value + /// Sets the minimum boundary for iso-surface plot. + static member inline isomin (value: float) = Interop.mkPlotAttr "isomin" value + /// Sets the maximum boundary for iso-surface plot. + static member inline isomax (value: int) = Interop.mkPlotAttr "isomax" value + /// Sets the maximum boundary for iso-surface plot. + static member inline isomax (value: float) = Interop.mkPlotAttr "isomax" value + /// Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (value: bool) = Interop.mkPlotAttr "opacityscale" value + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (values: seq) = Interop.mkPlotAttr "opacityscale" values + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (value: string) = Interop.mkPlotAttr "opacityscale" value + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (values: seq) = Interop.mkPlotAttr "opacityscale" values + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (value: int) = Interop.mkPlotAttr "opacityscale" value + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (values: seq) = Interop.mkPlotAttr "opacityscale" values + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (value: float) = Interop.mkPlotAttr "opacityscale" value + /// Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'. + static member inline opacityscale (values: seq) = Interop.mkPlotAttr "opacityscale" values + /// Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections. + static member inline flatshading (value: bool) = Interop.mkPlotAttr "flatshading" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on. + static member inline scene (values: seq) = Interop.mkPlotAttr "scene" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for value . + static member inline valuesrc (value: string) = Interop.mkPlotAttr "valuesrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module volume = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type surface = + /// Hides/displays surfaces between minimum and maximum iso-values. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn. + static member inline count (value: int) = Interop.mkPlotAttr "count" value + /// Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest. + static member inline pattern (values: seq) = Interop.mkPlotAttr "pattern" values + + [] + type spaceframe = + /// Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `spaceframe` elements. The default fill value is 1 meaning that they are entirely shaded. Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `spaceframe` elements. The default fill value is 1 meaning that they are entirely shaded. Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + module slices = + [] + type x = + /// Determines whether or not slice planes about the x dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + + [] + type y = + /// Determines whether or not slice planes about the y dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + + [] + type z = + /// Determines whether or not slice planes about the z dimension are drawn. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + + module caps = + [] + type x = + /// Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + [] + type y = + /// Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + [] + type z = + /// Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: int) = Interop.mkPlotAttr "fill" value + /// Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges. + static member inline fill (value: float) = Interop.mkPlotAttr "fill" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type lightposition = + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: int) = Interop.mkPlotAttr "z" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type lighting = + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: int) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: float) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: int) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: float) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: int) = Interop.mkPlotAttr "ambient" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: float) = Interop.mkPlotAttr "ambient" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: int) = Interop.mkPlotAttr "diffuse" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: float) = Interop.mkPlotAttr "diffuse" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: int) = Interop.mkPlotAttr "specular" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: float) = Interop.mkPlotAttr "specular" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: int) = Interop.mkPlotAttr "roughness" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: float) = Interop.mkPlotAttr "roughness" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: int) = Interop.mkPlotAttr "fresnel" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: float) = Interop.mkPlotAttr "fresnel" value + + [] + type contour = + /// Sets whether or not dynamic contours are shown on hover + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the color of the contour lines. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width of the contour lines. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the contour lines. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type mesh3d = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a point in space, which is the first vertex of a triangle. + static member inline i (values: seq) = Interop.mkPlotAttr "i" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a point in space, which is the first vertex of a triangle. + static member inline i (values: seq) = Interop.mkPlotAttr "i" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a point in space, which is the first vertex of a triangle. + static member inline i (values: seq) = Interop.mkPlotAttr "i" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a point in space, which is the first vertex of a triangle. + static member inline i (values: seq) = Interop.mkPlotAttr "i" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a point in space, which is the second vertex of a triangle. + static member inline j (values: seq) = Interop.mkPlotAttr "j" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a point in space, which is the second vertex of a triangle. + static member inline j (values: seq) = Interop.mkPlotAttr "j" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a point in space, which is the second vertex of a triangle. + static member inline j (values: seq) = Interop.mkPlotAttr "j" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a point in space, which is the second vertex of a triangle. + static member inline j (values: seq) = Interop.mkPlotAttr "j" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a point in space, which is the third vertex of a triangle. + static member inline k (values: seq) = Interop.mkPlotAttr "k" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a point in space, which is the third vertex of a triangle. + static member inline k (values: seq) = Interop.mkPlotAttr "k" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a point in space, which is the third vertex of a triangle. + static member inline k (values: seq) = Interop.mkPlotAttr "k" values + /// A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a point in space, which is the third vertex of a triangle. + static member inline k (values: seq) = Interop.mkPlotAttr "k" values + /// Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines how the mesh surface triangles are derived from the set of vertices (points) represented by the `x`, `y` and `z` arrays, if the `i`, `j`, `k` arrays are not supplied. For general use of `mesh3d` it is preferred that `i`, `j`, `k` are supplied. If *-1*, Delaunay triangulation is used, which is mainly suitable if the mesh is a single, more or less layer surface that is perpendicular to `delaunayaxis`. In case the `delaunayaxis` intersects the mesh surface at more than one point it will result triangles that are very long in the dimension of `delaunayaxis`. If *>0*, the alpha-shape algorithm is used. In this case, the positive `alphahull` value signals the use of the alpha-shape algorithm, _and_ its value acts as the parameter for the mesh fitting. If *0*, the convex-hull algorithm is used. It is suitable for convex bodies or if the intention is to enclose the `x`, `y` and `z` point set into a convex hull. + static member inline alphahull (value: int) = Interop.mkPlotAttr "alphahull" value + /// Determines how the mesh surface triangles are derived from the set of vertices (points) represented by the `x`, `y` and `z` arrays, if the `i`, `j`, `k` arrays are not supplied. For general use of `mesh3d` it is preferred that `i`, `j`, `k` are supplied. If *-1*, Delaunay triangulation is used, which is mainly suitable if the mesh is a single, more or less layer surface that is perpendicular to `delaunayaxis`. In case the `delaunayaxis` intersects the mesh surface at more than one point it will result triangles that are very long in the dimension of `delaunayaxis`. If *>0*, the alpha-shape algorithm is used. In this case, the positive `alphahull` value signals the use of the alpha-shape algorithm, _and_ its value acts as the parameter for the mesh fitting. If *0*, the convex-hull algorithm is used. It is suitable for convex bodies or if the intention is to enclose the `x`, `y` and `z` point set into a convex hull. + static member inline alphahull (value: float) = Interop.mkPlotAttr "alphahull" value + /// Sets the vertex intensity values, used for plotting fields on meshes + static member inline intensity (values: seq) = Interop.mkPlotAttr "intensity" values + /// Sets the vertex intensity values, used for plotting fields on meshes + static member inline intensity (values: seq) = Interop.mkPlotAttr "intensity" values + /// Sets the vertex intensity values, used for plotting fields on meshes + static member inline intensity (values: seq) = Interop.mkPlotAttr "intensity" values + /// Sets the vertex intensity values, used for plotting fields on meshes + static member inline intensity (values: seq) = Interop.mkPlotAttr "intensity" values + /// Sets the color of the whole mesh + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the color of each vertex Overrides *color*. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1. + static member inline vertexcolor (values: seq) = Interop.mkPlotAttr "vertexcolor" values + /// Sets the color of each vertex Overrides *color*. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1. + static member inline vertexcolor (values: seq) = Interop.mkPlotAttr "vertexcolor" values + /// Sets the color of each vertex Overrides *color*. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1. + static member inline vertexcolor (values: seq) = Interop.mkPlotAttr "vertexcolor" values + /// Sets the color of each vertex Overrides *color*. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1. + static member inline vertexcolor (values: seq) = Interop.mkPlotAttr "vertexcolor" values + /// Sets the color of each face Overrides *color* and *vertexcolor*. + static member inline facecolor (values: seq) = Interop.mkPlotAttr "facecolor" values + /// Sets the color of each face Overrides *color* and *vertexcolor*. + static member inline facecolor (values: seq) = Interop.mkPlotAttr "facecolor" values + /// Sets the color of each face Overrides *color* and *vertexcolor*. + static member inline facecolor (values: seq) = Interop.mkPlotAttr "facecolor" values + /// Sets the color of each face Overrides *color* and *vertexcolor*. + static member inline facecolor (values: seq) = Interop.mkPlotAttr "facecolor" values + /// Determines whether or not the color domain is computed with respect to the input data (here `intensity`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Value should have the same units as `intensity` and if set, `cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Value should have the same units as `intensity` and if set, `cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Value should have the same units as `intensity` and if set, `cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Value should have the same units as `intensity` and if set, `cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `intensity`. Has no effect when `cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `intensity`. Has no effect when `cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections. + static member inline flatshading (value: bool) = Interop.mkPlotAttr "flatshading" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on. + static member inline scene (values: seq) = Interop.mkPlotAttr "scene" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for i . + static member inline isrc (value: string) = Interop.mkPlotAttr "isrc" value + /// Sets the source reference on plot.ly for j . + static member inline jsrc (value: string) = Interop.mkPlotAttr "jsrc" value + /// Sets the source reference on plot.ly for k . + static member inline ksrc (value: string) = Interop.mkPlotAttr "ksrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for intensity . + static member inline intensitysrc (value: string) = Interop.mkPlotAttr "intensitysrc" value + /// Sets the source reference on plot.ly for vertexcolor . + static member inline vertexcolorsrc (value: string) = Interop.mkPlotAttr "vertexcolorsrc" value + /// Sets the source reference on plot.ly for facecolor . + static member inline facecolorsrc (value: string) = Interop.mkPlotAttr "facecolorsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module mesh3d = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the Delaunay axis, which is the axis that is perpendicular to the surface of the Delaunay triangulation. It has an effect if `i`, `j`, `k` are not provided and `alphahull` is set to indicate Delaunay triangulation. + [] + type delaunayaxis = + static member inline x = Interop.mkPlotAttr "delaunayaxis" "x" + static member inline y = Interop.mkPlotAttr "delaunayaxis" "y" + static member inline z = Interop.mkPlotAttr "delaunayaxis" "z" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + /// Sets the calendar system to use with `z` date data. + [] + type zcalendar = + static member inline gregorian = Interop.mkPlotAttr "zcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "zcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "zcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "zcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "zcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "zcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "zcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "zcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "zcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "zcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "zcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "zcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "zcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "zcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "zcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "zcalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type contour = + /// Sets whether or not dynamic contours are shown on hover + static member inline show (value: bool) = Interop.mkPlotAttr "show" value + /// Sets the color of the contour lines. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width of the contour lines. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width of the contour lines. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type lightposition = + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: int) = Interop.mkPlotAttr "z" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type lighting = + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: int) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: float) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: int) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: float) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: int) = Interop.mkPlotAttr "ambient" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: float) = Interop.mkPlotAttr "ambient" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: int) = Interop.mkPlotAttr "diffuse" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: float) = Interop.mkPlotAttr "diffuse" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: int) = Interop.mkPlotAttr "specular" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: float) = Interop.mkPlotAttr "specular" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: int) = Interop.mkPlotAttr "roughness" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: float) = Interop.mkPlotAttr "roughness" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: int) = Interop.mkPlotAttr "fresnel" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: float) = Interop.mkPlotAttr "fresnel" value + + [] + type cone = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates of the vector field and of the displayed cones. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates of the vector field and of the displayed cones. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates of the vector field and of the displayed cones. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates of the vector field and of the displayed cones. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the y coordinates of the vector field and of the displayed cones. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates of the vector field and of the displayed cones. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates of the vector field and of the displayed cones. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates of the vector field and of the displayed cones. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the z coordinates of the vector field and of the displayed cones. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates of the vector field and of the displayed cones. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates of the vector field and of the displayed cones. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates of the vector field and of the displayed cones. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// Adjusts the cone size scaling. The size of the cones is determined by their u/v/w norm multiplied a factor and `sizeref`. This factor (computed internally) corresponds to the minimum \"time\" to travel across two successive x/y/z positions at the average velocity of those two successive positions. All cones in a given trace use the same factor. With `sizemode` set to *scaled*, `sizeref` is unitless, its default value is *0.5* With `sizemode` set to *absolute*, `sizeref` has the same units as the u/v/w vector field, its the default value is half the sample's maximum vector norm. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Adjusts the cone size scaling. The size of the cones is determined by their u/v/w norm multiplied a factor and `sizeref`. This factor (computed internally) corresponds to the minimum \"time\" to travel across two successive x/y/z positions at the average velocity of those two successive positions. All cones in a given trace use the same factor. With `sizemode` set to *scaled*, `sizeref` is unitless, its default value is *0.5* With `sizemode` set to *absolute*, `sizeref` has the same units as the u/v/w vector field, its the default value is half the sample's maximum vector norm. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Sets the text elements associated with the cones. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `norm` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on. + static member inline scene (values: seq) = Interop.mkPlotAttr "scene" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for u . + static member inline usrc (value: string) = Interop.mkPlotAttr "usrc" value + /// Sets the source reference on plot.ly for v . + static member inline vsrc (value: string) = Interop.mkPlotAttr "vsrc" value + /// Sets the source reference on plot.ly for w . + static member inline wsrc (value: string) = Interop.mkPlotAttr "wsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module cone = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Determines whether `sizeref` is set as a *scaled* (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as *absolute* value (in the same units as the vector field). + [] + type sizemode = + static member inline scaled = Interop.mkPlotAttr "sizemode" "scaled" + static member inline absolute = Interop.mkPlotAttr "sizemode" "absolute" + + /// Sets the cones' anchor with respect to their x/y/z positions. Note that *cm* denote the cone's center of mass which corresponds to 1/4 from the tail to tip. + [] + type anchor = + static member inline tip = Interop.mkPlotAttr "anchor" "tip" + static member inline tail = Interop.mkPlotAttr "anchor" "tail" + static member inline cm = Interop.mkPlotAttr "anchor" "cm" + static member inline center = Interop.mkPlotAttr "anchor" "center" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type lightposition = + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: int) = Interop.mkPlotAttr "z" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type lighting = + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: int) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: float) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: int) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: float) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: int) = Interop.mkPlotAttr "ambient" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: float) = Interop.mkPlotAttr "ambient" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: int) = Interop.mkPlotAttr "diffuse" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: float) = Interop.mkPlotAttr "diffuse" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: int) = Interop.mkPlotAttr "specular" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: float) = Interop.mkPlotAttr "specular" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: int) = Interop.mkPlotAttr "roughness" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: float) = Interop.mkPlotAttr "roughness" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: int) = Interop.mkPlotAttr "fresnel" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: float) = Interop.mkPlotAttr "fresnel" value + + [] + type streamtube = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates of the vector field. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates of the vector field. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates of the vector field. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates of the vector field. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the y coordinates of the vector field. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates of the vector field. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates of the vector field. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates of the vector field. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the z coordinates of the vector field. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates of the vector field. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates of the vector field. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z coordinates of the vector field. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the x components of the vector field. + static member inline u (values: seq) = Interop.mkPlotAttr "u" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the y components of the vector field. + static member inline v (values: seq) = Interop.mkPlotAttr "v" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// Sets the z components of the vector field. + static member inline w (values: seq) = Interop.mkPlotAttr "w" values + /// The maximum number of displayed segments in a streamtube. + static member inline maxdisplayed (value: int) = Interop.mkPlotAttr "maxdisplayed" value + /// The scaling factor for the streamtubes. The default is 1, which avoids two max divergence tubes from touching at adjacent starting positions. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// The scaling factor for the streamtubes. The default is 1, which avoids two max divergence tubes from touching at adjacent starting positions. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Sets a text element associated with this trace. If trace `hoverinfo` contains a *text* flag, this text element will be seen in all hover labels. Note that streamtube traces do not support array `text` values. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `tubex`, `tubey`, `tubez`, `tubeu`, `tubev`, `tubew`, `norm` and `divergence`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on. + static member inline scene (values: seq) = Interop.mkPlotAttr "scene" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for u . + static member inline usrc (value: string) = Interop.mkPlotAttr "usrc" value + /// Sets the source reference on plot.ly for v . + static member inline vsrc (value: string) = Interop.mkPlotAttr "vsrc" value + /// Sets the source reference on plot.ly for w . + static member inline wsrc (value: string) = Interop.mkPlotAttr "wsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module streamtube = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type starts = + /// Sets the x components of the starting position of the streamtubes + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x components of the starting position of the streamtubes + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x components of the starting position of the streamtubes + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x components of the starting position of the streamtubes + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the y components of the starting position of the streamtubes + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y components of the starting position of the streamtubes + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y components of the starting position of the streamtubes + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y components of the starting position of the streamtubes + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the z components of the starting position of the streamtubes + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z components of the starting position of the streamtubes + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z components of the starting position of the streamtubes + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z components of the starting position of the streamtubes + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type lightposition = + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the X coordinate for each vertex. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Y coordinate for each vertex. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: int) = Interop.mkPlotAttr "z" value + /// Numeric vector, representing the Z coordinate for each vertex. + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type lighting = + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: int) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry. + static member inline vertexnormalsepsilon (value: float) = Interop.mkPlotAttr "vertexnormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: int) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Epsilon for face normals calculation avoids math issues arising from degenerate geometry. + static member inline facenormalsepsilon (value: float) = Interop.mkPlotAttr "facenormalsepsilon" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: int) = Interop.mkPlotAttr "ambient" value + /// Ambient light increases overall color visibility but can wash out the image. + static member inline ambient (value: float) = Interop.mkPlotAttr "ambient" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: int) = Interop.mkPlotAttr "diffuse" value + /// Represents the extent that incident rays are reflected in a range of angles. + static member inline diffuse (value: float) = Interop.mkPlotAttr "diffuse" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: int) = Interop.mkPlotAttr "specular" value + /// Represents the level that incident rays are reflected in a single direction, causing shine. + static member inline specular (value: float) = Interop.mkPlotAttr "specular" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: int) = Interop.mkPlotAttr "roughness" value + /// Alters specular reflection; the rougher the surface, the wider and less contrasty the shine. + static member inline roughness (value: float) = Interop.mkPlotAttr "roughness" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: int) = Interop.mkPlotAttr "fresnel" value + /// Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine. + static member inline fresnel (value: float) = Interop.mkPlotAttr "fresnel" value + + [] + type scattergeo = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `lat`, `lon`, `location` and `text`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on. + static member inline geo (values: seq) = Interop.mkPlotAttr "geo" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for lon . + static member inline lonsrc (value: string) = Interop.mkPlotAttr "lonsrc" value + /// Sets the source reference on plot.ly for lat . + static member inline latsrc (value: string) = Interop.mkPlotAttr "latsrc" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module scattergeo = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Determines the set of locations used to match entries in `locations` to regions on the map. + [] + type locationmode = + static member inline ISO3 = Interop.mkPlotAttr "locationmode" "ISO-3" + static member inline USAStates = Interop.mkPlotAttr "locationmode" "USA-states" + static member inline countryNames = Interop.mkPlotAttr "locationmode" "country names" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + /// Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + + [] + type marker = + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type gradient = + /// Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for type . + static member inline typesrc (value: string) = Interop.mkPlotAttr "typesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module gradient = + /// Sets the type of gradient used to fill the markers + [] + type type' = + static member inline radial = Interop.mkPlotAttr "type" "radial" + static member inline horizontal = Interop.mkPlotAttr "type" "horizontal" + static member inline vertical = Interop.mkPlotAttr "type" "vertical" + static member inline none = Interop.mkPlotAttr "type" "none" + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type choropleth = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the coordinates via location IDs or names. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the coordinates via location IDs or names. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the coordinates via location IDs or names. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the coordinates via location IDs or names. See `locationmode` for more info. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the text elements associated with each location. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on. + static member inline geo (values: seq) = Interop.mkPlotAttr "geo" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module choropleth = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Determines the set of locations used to match entries in `locations` to regions on the map. + [] + type locationmode = + static member inline ISO3 = Interop.mkPlotAttr "locationmode" "ISO-3" + static member inline USAStates = Interop.mkPlotAttr "locationmode" "USA-states" + static member inline countryNames = Interop.mkPlotAttr "locationmode" "country names" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the opacity of the locations. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the locations. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + [] + type line = + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type scattergl = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines the drawing mode for this scatter trace. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + + module scattergl = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + /// Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline tozeroy = Interop.mkPlotAttr "fill" "tozeroy" + static member inline tozerox = Interop.mkPlotAttr "fill" "tozerox" + static member inline tonexty = Interop.mkPlotAttr "fill" "tonexty" + static member inline tonextx = Interop.mkPlotAttr "fill" "tonextx" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + static member inline tonext = Interop.mkPlotAttr "fill" "tonext" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Sets the calendar system to use with `y` date data. + [] + type ycalendar = + static member inline gregorian = Interop.mkPlotAttr "ycalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "ycalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "ycalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "ycalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "ycalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "ycalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "ycalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "ycalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "ycalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "ycalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "ycalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "ycalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "ycalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "ycalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "ycalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "ycalendar" "ummalqura" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + module line = + /// Determines the line shape. The values correspond to step-wise line shapes. + [] + type shape = + static member inline linear = Interop.mkPlotAttr "shape" "linear" + static member inline hv = Interop.mkPlotAttr "shape" "hv" + static member inline vh = Interop.mkPlotAttr "shape" "vh" + static member inline hvh = Interop.mkPlotAttr "shape" "hvh" + static member inline vhv = Interop.mkPlotAttr "shape" "vhv" + + /// Sets the style of the lines. + [] + type dash = + static member inline solid = Interop.mkPlotAttr "dash" "solid" + static member inline dot = Interop.mkPlotAttr "dash" "dot" + static member inline dash = Interop.mkPlotAttr "dash" "dash" + static member inline longdash = Interop.mkPlotAttr "dash" "longdash" + static member inline dashdot = Interop.mkPlotAttr "dash" "dashdot" + static member inline longdashdot = Interop.mkPlotAttr "dash" "longdashdot" + + [] + type marker = + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type error_x = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + static member inline copy_ystyle (value: bool) = Interop.mkPlotAttr "copy_ystyle" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_x = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type error_y = + /// Determines whether or not this set of error bars is visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars. + static member inline symmetric (value: bool) = Interop.mkPlotAttr "symmetric" value + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data. + static member inline array (values: seq) = Interop.mkPlotAttr "array" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data. + static member inline arrayminus (values: seq) = Interop.mkPlotAttr "arrayminus" values + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: int) = Interop.mkPlotAttr "valueminus" value + /// Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars + static member inline valueminus (value: float) = Interop.mkPlotAttr "valueminus" value + static member inline traceref (value: int) = Interop.mkPlotAttr "traceref" value + static member inline tracerefminus (value: int) = Interop.mkPlotAttr "tracerefminus" value + /// Sets the stoke color of the error bars. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the error bars. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the cross-bar at both ends of the error bars. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for array . + static member inline arraysrc (value: string) = Interop.mkPlotAttr "arraysrc" value + /// Sets the source reference on plot.ly for arrayminus . + static member inline arrayminussrc (value: string) = Interop.mkPlotAttr "arrayminussrc" value + + module error_y = + /// Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`. + [] + type type' = + static member inline percent = Interop.mkPlotAttr "type" "percent" + static member inline constant = Interop.mkPlotAttr "type" "constant" + static member inline sqrt = Interop.mkPlotAttr "type" "sqrt" + static member inline data = Interop.mkPlotAttr "type" "data" + + [] + type splom = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets text elements associated with each (x,y) pair to appear on hover. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the list of x axes corresponding to dimensions of this splom trace. By default, a splom will match the first N xaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis. + static member inline xaxes (values: seq) = Interop.mkPlotAttr "xaxes" values + /// Sets the list of y axes corresponding to dimensions of this splom trace. By default, a splom will match the first N yaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis. + static member inline yaxes (values: seq) = Interop.mkPlotAttr "yaxes" values + /// Determines whether or not subplots on the upper half from the diagonal are displayed. + static member inline showupperhalf (value: bool) = Interop.mkPlotAttr "showupperhalf" value + /// Determines whether or not subplots on the lower half from the diagonal are displayed. + static member inline showlowerhalf (value: bool) = Interop.mkPlotAttr "showlowerhalf" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module splom = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type diagonal = + /// Determines whether or not subplots on the diagonal are displayed. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type pointcloud = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Faster alternative to specifying `x` and `y` separately. If supplied, it must be a typed `Float32Array` array that represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]` + static member inline xy (values: seq) = Interop.mkPlotAttr "xy" values + /// Faster alternative to specifying `x` and `y` separately. If supplied, it must be a typed `Float32Array` array that represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]` + static member inline xy (values: seq) = Interop.mkPlotAttr "xy" values + /// Faster alternative to specifying `x` and `y` separately. If supplied, it must be a typed `Float32Array` array that represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]` + static member inline xy (values: seq) = Interop.mkPlotAttr "xy" values + /// Faster alternative to specifying `x` and `y` separately. If supplied, it must be a typed `Float32Array` array that represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]` + static member inline xy (values: seq) = Interop.mkPlotAttr "xy" values + /// A sequential value, 0..n, supply it to avoid creating this array inside plotting. If specified, it must be a typed `Int32Array` array. Its length must be equal to or greater than the number of points. For the best performance and memory use, create one large `indices` typed array that is guaranteed to be at least as long as the largest number of points during use, and reuse it on each `Plotly.restyle()` call. + static member inline indices (values: seq) = Interop.mkPlotAttr "indices" values + /// A sequential value, 0..n, supply it to avoid creating this array inside plotting. If specified, it must be a typed `Int32Array` array. Its length must be equal to or greater than the number of points. For the best performance and memory use, create one large `indices` typed array that is guaranteed to be at least as long as the largest number of points during use, and reuse it on each `Plotly.restyle()` call. + static member inline indices (values: seq) = Interop.mkPlotAttr "indices" values + /// A sequential value, 0..n, supply it to avoid creating this array inside plotting. If specified, it must be a typed `Int32Array` array. Its length must be equal to or greater than the number of points. For the best performance and memory use, create one large `indices` typed array that is guaranteed to be at least as long as the largest number of points during use, and reuse it on each `Plotly.restyle()` call. + static member inline indices (values: seq) = Interop.mkPlotAttr "indices" values + /// A sequential value, 0..n, supply it to avoid creating this array inside plotting. If specified, it must be a typed `Int32Array` array. Its length must be equal to or greater than the number of points. For the best performance and memory use, create one large `indices` typed array that is guaranteed to be at least as long as the largest number of points during use, and reuse it on each `Plotly.restyle()` call. + static member inline indices (values: seq) = Interop.mkPlotAttr "indices" values + /// Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits. + static member inline xbounds (values: seq) = Interop.mkPlotAttr "xbounds" values + /// Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits. + static member inline xbounds (values: seq) = Interop.mkPlotAttr "xbounds" values + /// Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits. + static member inline xbounds (values: seq) = Interop.mkPlotAttr "xbounds" values + /// Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits. + static member inline xbounds (values: seq) = Interop.mkPlotAttr "xbounds" values + /// Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits. + static member inline ybounds (values: seq) = Interop.mkPlotAttr "ybounds" values + /// Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits. + static member inline ybounds (values: seq) = Interop.mkPlotAttr "ybounds" values + /// Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits. + static member inline ybounds (values: seq) = Interop.mkPlotAttr "ybounds" values + /// Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits. + static member inline ybounds (values: seq) = Interop.mkPlotAttr "ybounds" values + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for xy . + static member inline xysrc (value: string) = Interop.mkPlotAttr "xysrc" value + /// Sets the source reference on plot.ly for indices . + static member inline indicessrc (value: string) = Interop.mkPlotAttr "indicessrc" value + /// Sets the source reference on plot.ly for xbounds . + static member inline xboundssrc (value: string) = Interop.mkPlotAttr "xboundssrc" value + /// Sets the source reference on plot.ly for ybounds . + static member inline yboundssrc (value: string) = Interop.mkPlotAttr "yboundssrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + + module pointcloud = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type marker = + /// Sets the marker fill color. It accepts a specific color.If the color is not fully opaque and there are hundreds of thousandsof points, it may cause slower zooming and panning. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker opacity. The default value is `1` (fully opaque). If the markers are not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning. Opacity fades the color even if `blend` is left on `false` even if there is no translucency effect in that case. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. The default value is `1` (fully opaque). If the markers are not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning. Opacity fades the color even if `blend` is left on `false` even if there is no translucency effect in that case. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Determines if colors are blended together for a translucency effect in case `opacity` is specified as a value less then `1`. Setting `blend` to `true` reduces zoom/pan speed if used with large numbers of points. + static member inline blend (value: bool) = Interop.mkPlotAttr "blend" value + /// Sets the minimum size (in px) of the rendered marker points, effective when the `pointcloud` shows a million or more points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Sets the minimum size (in px) of the rendered marker points, effective when the `pointcloud` shows a million or more points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets the maximum size (in px) of the rendered marker points. Effective when the `pointcloud` shows only few points. + static member inline sizemax (value: int) = Interop.mkPlotAttr "sizemax" value + /// Sets the maximum size (in px) of the rendered marker points. Effective when the `pointcloud` shows only few points. + static member inline sizemax (value: float) = Interop.mkPlotAttr "sizemax" value + + module marker = + [] + type border = + /// Sets the stroke color. It accepts a specific color. If the color is not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Specifies what fraction of the marker area is covered with the border. + static member inline arearatio (value: int) = Interop.mkPlotAttr "arearatio" value + /// Specifies what fraction of the marker area is covered with the border. + static member inline arearatio (value: float) = Interop.mkPlotAttr "arearatio" value + + [] + type heatmapgl = + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: bool) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: string) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: int) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (value: float) = Interop.mkPlotAttr "x0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline x0 (values: seq) = Interop.mkPlotAttr "x0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: int) = Interop.mkPlotAttr "dx" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline dx (value: float) = Interop.mkPlotAttr "dx" value + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the y coordinates. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: bool) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: string) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: int) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (value: float) = Interop.mkPlotAttr "y0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline y0 (values: seq) = Interop.mkPlotAttr "y0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: int) = Interop.mkPlotAttr "dy" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline dy (value: float) = Interop.mkPlotAttr "dy" value + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Transposes the z data. + static member inline transpose (value: bool) = Interop.mkPlotAttr "transpose" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + + module heatmapgl = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided). + [] + type xtype = + static member inline array = Interop.mkPlotAttr "xtype" "array" + static member inline scaled = Interop.mkPlotAttr "xtype" "scaled" + + /// If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided) + [] + type ytype = + static member inline array = Interop.mkPlotAttr "ytype" "array" + static member inline scaled = Interop.mkPlotAttr "ytype" "scaled" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type parcoords = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the angle of the labels with respect to the horizontal. For example, a `tickangle` of -90 draws the labels vertically. Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*. + static member inline labelangle (value: int) = Interop.mkPlotAttr "labelangle" value + /// Sets the angle of the labels with respect to the horizontal. For example, a `tickangle` of -90 draws the labels vertically. Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*. + static member inline labelangle (value: float) = Interop.mkPlotAttr "labelangle" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + + module parcoords = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Specifies the location of the `label`. *top* positions labels above, next to the title *bottom* positions labels below the graph Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*. + [] + type labelside = + static member inline top = Interop.mkPlotAttr "labelside" "top" + static member inline bottom = Interop.mkPlotAttr "labelside" "bottom" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type domain = + /// Sets the horizontal domain of this parcoords trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this parcoords trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this parcoords trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this parcoords trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this parcoords trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this parcoords trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type labelfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type rangefont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets thelinecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color`is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `line.color`is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module line = + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type parcats = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `count`, `probability`, `category`, `categorycount`, `colorcount` and `bandcolorcount`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sort paths so that like colors are bundled together within each category. + static member inline bundlecolors (value: bool) = Interop.mkPlotAttr "bundlecolors" value + /// The number of observations represented by each state. Defaults to 1 so that each state represents one observation + static member inline counts (value: int) = Interop.mkPlotAttr "counts" value + /// The number of observations represented by each state. Defaults to 1 so that each state represents one observation + static member inline counts (value: float) = Interop.mkPlotAttr "counts" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for counts . + static member inline countssrc (value: string) = Interop.mkPlotAttr "countssrc" value + + module parcats = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the hover interaction mode for the parcats diagram. If `category`, hover interaction take place per category. If `color`, hover interactions take place per color per category. If `dimension`, hover interactions take place across all categories per dimension. + [] + type hoveron = + static member inline category = Interop.mkPlotAttr "hoveron" "category" + static member inline color = Interop.mkPlotAttr "hoveron" "color" + static member inline dimension = Interop.mkPlotAttr "hoveron" "dimension" + + /// Sets the drag interaction mode for categories and dimensions. If `perpendicular`, the categories can only move along a line perpendicular to the paths. If `freeform`, the categories can freely move on the plane. If `fixed`, the categories and dimensions are stationary. + [] + type arrangement = + static member inline perpendicular = Interop.mkPlotAttr "arrangement" "perpendicular" + static member inline freeform = Interop.mkPlotAttr "arrangement" "freeform" + static member inline fixed' = Interop.mkPlotAttr "arrangement" "fixed" + + /// Sets the path sorting algorithm. If `forward`, sort paths based on dimension categories from left to right. If `backward`, sort paths based on dimensions categories from right to left. + [] + type sortpaths = + static member inline forward = Interop.mkPlotAttr "sortpaths" "forward" + static member inline backward = Interop.mkPlotAttr "sortpaths" "backward" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type domain = + /// Sets the horizontal domain of this parcats trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this parcats trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this parcats trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this parcats trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this parcats trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this parcats trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type labelfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets thelinecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color`is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `line.color`is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `count` and `probability`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module line = + /// Sets the shape of the paths. If `linear`, paths are composed of straight lines. If `hspline`, paths are composed of horizontal curved splines + [] + type shape = + static member inline linear = Interop.mkPlotAttr "shape" "linear" + static member inline hspline = Interop.mkPlotAttr "shape" "hspline" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type scattermapbox = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `lat`, `lon` and `text`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines if this scattermapbox trace's layers are to be inserted before the layer with the specified ID. By default, scattermapbox layers are inserted above all the base layers. To place the scattermapbox layers above every other layer, set `below` to *''*. + static member inline below (value: string) = Interop.mkPlotAttr "below" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on. + static member inline subplot (values: seq) = Interop.mkPlotAttr "subplot" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for lon . + static member inline lonsrc (value: string) = Interop.mkPlotAttr "lonsrc" value + /// Sets the source reference on plot.ly for lat . + static member inline latsrc (value: string) = Interop.mkPlotAttr "latsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module scattermapbox = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type marker = + /// Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols. + static member inline symbol (value: string) = Interop.mkPlotAttr "symbol" value + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module marker = + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type choroplethmapbox = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets which features found in *geojson* to plot using their feature `id` field. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets which features found in *geojson* to plot using their feature `id` field. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets which features found in *geojson* to plot using their feature `id` field. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets which features found in *geojson* to plot using their feature `id` field. + static member inline locations (values: seq) = Interop.mkPlotAttr "locations" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the color values. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (value: bool) = Interop.mkPlotAttr "geojson" value + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (values: seq) = Interop.mkPlotAttr "geojson" values + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (value: string) = Interop.mkPlotAttr "geojson" value + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (values: seq) = Interop.mkPlotAttr "geojson" values + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (value: int) = Interop.mkPlotAttr "geojson" value + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (values: seq) = Interop.mkPlotAttr "geojson" values + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (value: float) = Interop.mkPlotAttr "geojson" value + /// Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*. + static member inline geojson (values: seq) = Interop.mkPlotAttr "geojson" values + /// Determines if the choropleth polygons will be inserted before the layer with the specified ID. By default, choroplethmapbox traces are placed above the water layers. If set to '', the layer will be inserted above every existing layer. + static member inline below (value: string) = Interop.mkPlotAttr "below" value + /// Sets the text elements associated with each location. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `properties` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on. + static member inline subplot (values: seq) = Interop.mkPlotAttr "subplot" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for locations . + static member inline locationssrc (value: string) = Interop.mkPlotAttr "locationssrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module choroplethmapbox = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets the opacity of the locations. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the locations. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + [] + type line = + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type densitymapbox = + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the longitude coordinates (in degrees East). + static member inline lon (values: seq) = Interop.mkPlotAttr "lon" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the latitude coordinates (in degrees North). + static member inline lat (values: seq) = Interop.mkPlotAttr "lat" values + /// Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the radius of influence of one `lon` / `lat` point in pixels. Increasing the value makes the densitymapbox trace smoother, but less detailed. + static member inline radius (value: int) = Interop.mkPlotAttr "radius" value + /// Sets the radius of influence of one `lon` / `lat` point in pixels. Increasing the value makes the densitymapbox trace smoother, but less detailed. + static member inline radius (value: float) = Interop.mkPlotAttr "radius" value + /// Determines if the densitymapbox trace will be inserted before the layer with the specified ID. By default, densitymapbox traces are placed below the first layer of type symbol If set to '', the layer will be inserted above every existing layer. + static member inline below (value: string) = Interop.mkPlotAttr "below" value + /// Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on. + static member inline subplot (values: seq) = Interop.mkPlotAttr "subplot" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for lon . + static member inline lonsrc (value: string) = Interop.mkPlotAttr "lonsrc" value + /// Sets the source reference on plot.ly for lat . + static member inline latsrc (value: string) = Interop.mkPlotAttr "latsrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for radius . + static member inline radiussrc (value: string) = Interop.mkPlotAttr "radiussrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module densitymapbox = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type sankey = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. Note that this attribute is superseded by `node.hoverinfo` and `node.hoverinfo` for nodes and links respectively. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline valueformat (value: string) = Interop.mkPlotAttr "valueformat" value + /// Adds a unit to follow the value in the hover tooltip. Add a space if a separation is necessary from the value. + static member inline valuesuffix (value: string) = Interop.mkPlotAttr "valuesuffix" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + + module sankey = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the orientation of the Sankey diagram. + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// If value is `snap` (the default), the node arrangement is assisted by automatic snapping of elements to preserve space between nodes specified via `nodepad`. If value is `perpendicular`, the nodes can only move along a line perpendicular to the flow. If value is `freeform`, the nodes can freely move on the plane. If value is `fixed`, the nodes are stationary. + [] + type arrangement = + static member inline snap = Interop.mkPlotAttr "arrangement" "snap" + static member inline perpendicular = Interop.mkPlotAttr "arrangement" "perpendicular" + static member inline freeform = Interop.mkPlotAttr "arrangement" "freeform" + static member inline fixed' = Interop.mkPlotAttr "arrangement" "fixed" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type domain = + /// Sets the horizontal domain of this sankey trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this sankey trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this sankey trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this sankey trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this sankey trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this sankey trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type node = + /// The shown name of the node. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// The shown name of the node. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// The shown name of the node. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// The shown name of the node. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// Groups of nodes. Each group is defined by an array with the indices of the nodes it contains. Multiple groups can be specified. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Groups of nodes. Each group is defined by an array with the indices of the nodes it contains. Multiple groups can be specified. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// The normalized horizontal position of the node. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// The normalized horizontal position of the node. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// The normalized horizontal position of the node. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// The normalized horizontal position of the node. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// The normalized vertical position of the node. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// The normalized vertical position of the node. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// The normalized vertical position of the node. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// The normalized vertical position of the node. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the `node` color. It can be a single value, or an array for specifying color for each `node`. If `node.color` is omitted, then the default `Plotly` color palette will be cycled through to have a variety of colors. These defaults are not fully opaque, to allow some visibility of what is beneath the node. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the padding (in px) between the `nodes`. + static member inline pad (value: int) = Interop.mkPlotAttr "pad" value + /// Sets the padding (in px) between the `nodes`. + static member inline pad (value: float) = Interop.mkPlotAttr "pad" value + /// Sets the thickness (in px) of the `nodes`. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness (in px) of the `nodes`. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the source reference on plot.ly for label . + static member inline labelsrc (value: string) = Interop.mkPlotAttr "labelsrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module node = + /// Determines which trace information appear when hovering nodes. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + [] + type hoverinfo = + static member inline all = Interop.mkPlotAttr "hoverinfo" "all" + static member inline none = Interop.mkPlotAttr "hoverinfo" "none" + static member inline skip = Interop.mkPlotAttr "hoverinfo" "skip" + + [] + type line = + /// Sets the color of the `line` around each `node`. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the `line` around each `node`. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the `line` around each `node`. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type link = + /// The shown name of the link. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// The shown name of the link. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// The shown name of the link. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// The shown name of the link. + static member inline label (values: seq) = Interop.mkPlotAttr "label" values + /// Sets the `link` color. It can be a single value, or an array for specifying color for each `link`. If `link.color` is omitted, then by default, a translucent grey link will be used. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// An integer number `[0..nodes.length - 1]` that represents the source node. + static member inline source (values: seq) = Interop.mkPlotAttr "source" values + /// An integer number `[0..nodes.length - 1]` that represents the source node. + static member inline source (values: seq) = Interop.mkPlotAttr "source" values + /// An integer number `[0..nodes.length - 1]` that represents the source node. + static member inline source (values: seq) = Interop.mkPlotAttr "source" values + /// An integer number `[0..nodes.length - 1]` that represents the source node. + static member inline source (values: seq) = Interop.mkPlotAttr "source" values + /// An integer number `[0..nodes.length - 1]` that represents the target node. + static member inline target (values: seq) = Interop.mkPlotAttr "target" values + /// An integer number `[0..nodes.length - 1]` that represents the target node. + static member inline target (values: seq) = Interop.mkPlotAttr "target" values + /// An integer number `[0..nodes.length - 1]` that represents the target node. + static member inline target (values: seq) = Interop.mkPlotAttr "target" values + /// An integer number `[0..nodes.length - 1]` that represents the target node. + static member inline target (values: seq) = Interop.mkPlotAttr "target" values + /// A numeric value representing the flow volume value. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// A numeric value representing the flow volume value. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// A numeric value representing the flow volume value. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// A numeric value representing the flow volume value. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets the source reference on plot.ly for label . + static member inline labelsrc (value: string) = Interop.mkPlotAttr "labelsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for source . + static member inline sourcesrc (value: string) = Interop.mkPlotAttr "sourcesrc" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + /// Sets the source reference on plot.ly for value . + static member inline valuesrc (value: string) = Interop.mkPlotAttr "valuesrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module link = + /// Determines which trace information appear when hovering links. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + [] + type hoverinfo = + static member inline all = Interop.mkPlotAttr "hoverinfo" "all" + static member inline none = Interop.mkPlotAttr "hoverinfo" "none" + static member inline skip = Interop.mkPlotAttr "hoverinfo" "skip" + + [] + type line = + /// Sets the color of the `line` around each `link`. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the `line` around each `link`. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the `line` around each `link`. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type indicator = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Determines how the value is displayed on the graph. `number` displays the value numerically in text. `delta` displays the difference to a reference value in text. Finally, `gauge` displays the value graphically on an axis. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets the number to be displayed. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the number to be displayed. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + + module indicator = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the horizontal alignment of the `text` within the box. Note that this attribute has no effect if an angular gauge is displayed: in this case, it is always centered + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline center = Interop.mkPlotAttr "align" "center" + static member inline right = Interop.mkPlotAttr "align" "right" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type domain = + /// Sets the horizontal domain of this indicator trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this indicator trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this indicator trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this indicator trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this indicator trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this indicator trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type title = + /// Sets the title of this indicator. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Sets the horizontal alignment of the title. It defaults to `center` except for bullet charts for which it defaults to right. + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline center = Interop.mkPlotAttr "align" "center" + static member inline right = Interop.mkPlotAttr "align" "right" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type number = + /// Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline valueformat (value: string) = Interop.mkPlotAttr "valueformat" value + /// Sets a prefix appearing before the number. + static member inline prefix (value: string) = Interop.mkPlotAttr "prefix" value + /// Sets a suffix appearing next to the number. + static member inline suffix (value: string) = Interop.mkPlotAttr "suffix" value + + module number = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type delta = + /// Sets the reference value to compute the delta. By default, it is set to the current value. + static member inline reference (value: int) = Interop.mkPlotAttr "reference" value + /// Sets the reference value to compute the delta. By default, it is set to the current value. + static member inline reference (value: float) = Interop.mkPlotAttr "reference" value + /// Show relative change + static member inline relative (value: bool) = Interop.mkPlotAttr "relative" value + /// Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline valueformat (value: string) = Interop.mkPlotAttr "valueformat" value + + module delta = + /// Sets the position of delta with respect to the number. + [] + type position = + static member inline top = Interop.mkPlotAttr "position" "top" + static member inline bottom = Interop.mkPlotAttr "position" "bottom" + static member inline left = Interop.mkPlotAttr "position" "left" + static member inline right = Interop.mkPlotAttr "position" "right" + + [] + type increasing = + /// Sets the symbol to display for increasing value + static member inline symbol (value: string) = Interop.mkPlotAttr "symbol" value + /// Sets the color for increasing value. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type decreasing = + /// Sets the symbol to display for increasing value + static member inline symbol (value: string) = Interop.mkPlotAttr "symbol" value + /// Sets the color for increasing value. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type gauge = + /// Sets the gauge background color. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the color of the border enclosing the gauge. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) of the border enclosing the gauge. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) of the border enclosing the gauge. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + + module gauge = + /// Set the shape of the gauge + [] + type shape = + static member inline angular = Interop.mkPlotAttr "shape" "angular" + static member inline bullet = Interop.mkPlotAttr "shape" "bullet" + + [] + type bar = + /// Sets the background color of the arc. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the thickness of the bar as a fraction of the total thickness of the gauge. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the bar as a fraction of the total thickness of the gauge. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + + module bar = + [] + type line = + /// Sets the color of the line enclosing each sector. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the line enclosing each sector. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type axis = + /// Sets the range of this axis. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module axis = + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type threshold = + /// Sets the thickness of the threshold line as a fraction of the thickness of the gauge. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the threshold line as a fraction of the thickness of the gauge. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets a treshold value drawn as a line. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets a treshold value drawn as a line. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + + module threshold = + [] + type line = + /// Sets the color of the threshold line. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of the threshold line. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the threshold line. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type table = + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// The width of columns expressed as a ratio. Columns fill the available width in proportion of their specified column widths. + static member inline columnwidth (value: int) = Interop.mkPlotAttr "columnwidth" value + /// The width of columns expressed as a ratio. Columns fill the available width in proportion of their specified column widths. + static member inline columnwidth (value: float) = Interop.mkPlotAttr "columnwidth" value + /// Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero. + static member inline columnorder (values: seq) = Interop.mkPlotAttr "columnorder" values + /// Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero. + static member inline columnorder (values: seq) = Interop.mkPlotAttr "columnorder" values + /// Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero. + static member inline columnorder (values: seq) = Interop.mkPlotAttr "columnorder" values + /// Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero. + static member inline columnorder (values: seq) = Interop.mkPlotAttr "columnorder" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for columnwidth . + static member inline columnwidthsrc (value: string) = Interop.mkPlotAttr "columnwidthsrc" value + /// Sets the source reference on plot.ly for columnorder . + static member inline columnordersrc (value: string) = Interop.mkPlotAttr "columnordersrc" value + + module table = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type domain = + /// Sets the horizontal domain of this table trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this table trace (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this table trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this table trace (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this table trace . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this table trace . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type header = + /// Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Prefix for cell values. + static member inline prefix (value: string) = Interop.mkPlotAttr "prefix" value + /// Suffix for cell values. + static member inline suffix (value: string) = Interop.mkPlotAttr "suffix" value + /// The height of cells. + static member inline height (value: int) = Interop.mkPlotAttr "height" value + /// The height of cells. + static member inline height (value: float) = Interop.mkPlotAttr "height" value + /// Sets the source reference on plot.ly for values . + static member inline valuessrc (value: string) = Interop.mkPlotAttr "valuessrc" value + /// Sets the source reference on plot.ly for format . + static member inline formatsrc (value: string) = Interop.mkPlotAttr "formatsrc" value + /// Sets the source reference on plot.ly for prefix . + static member inline prefixsrc (value: string) = Interop.mkPlotAttr "prefixsrc" value + /// Sets the source reference on plot.ly for suffix . + static member inline suffixsrc (value: string) = Interop.mkPlotAttr "suffixsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + + module header = + /// Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width. + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline center = Interop.mkPlotAttr "align" "center" + static member inline right = Interop.mkPlotAttr "align" "right" + + [] + type line = + static member inline width (value: int) = Interop.mkPlotAttr "width" value + static member inline width (value: float) = Interop.mkPlotAttr "width" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type fill = + /// Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type cells = + /// Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string. + static member inline values (values: seq) = Interop.mkPlotAttr "values" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline format (values: seq) = Interop.mkPlotAttr "format" values + /// Prefix for cell values. + static member inline prefix (value: string) = Interop.mkPlotAttr "prefix" value + /// Suffix for cell values. + static member inline suffix (value: string) = Interop.mkPlotAttr "suffix" value + /// The height of cells. + static member inline height (value: int) = Interop.mkPlotAttr "height" value + /// The height of cells. + static member inline height (value: float) = Interop.mkPlotAttr "height" value + /// Sets the source reference on plot.ly for values . + static member inline valuessrc (value: string) = Interop.mkPlotAttr "valuessrc" value + /// Sets the source reference on plot.ly for format . + static member inline formatsrc (value: string) = Interop.mkPlotAttr "formatsrc" value + /// Sets the source reference on plot.ly for prefix . + static member inline prefixsrc (value: string) = Interop.mkPlotAttr "prefixsrc" value + /// Sets the source reference on plot.ly for suffix . + static member inline suffixsrc (value: string) = Interop.mkPlotAttr "suffixsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + + module cells = + /// Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width. + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline center = Interop.mkPlotAttr "align" "center" + static member inline right = Interop.mkPlotAttr "align" "right" + + [] + type line = + static member inline width (value: int) = Interop.mkPlotAttr "width" value + static member inline width (value: float) = Interop.mkPlotAttr "width" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type fill = + /// Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type carpet = + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie + static member inline carpet (value: string) = Interop.mkPlotAttr "carpet" value + /// A two dimensional array of x coordinates at each carpet point. If ommitted, the plot is a cheater plot and the xaxis is hidden by default. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// A two dimensional array of x coordinates at each carpet point. If ommitted, the plot is a cheater plot and the xaxis is hidden by default. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// A two dimensional array of x coordinates at each carpet point. If ommitted, the plot is a cheater plot and the xaxis is hidden by default. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// A two dimensional array of x coordinates at each carpet point. If ommitted, the plot is a cheater plot and the xaxis is hidden by default. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// A two dimensional array of y coordinates at each carpet point. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// A two dimensional array of y coordinates at each carpet point. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// A two dimensional array of y coordinates at each carpet point. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// A two dimensional array of y coordinates at each carpet point. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// An array containing values of the first parameter value + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// An array containing values of the first parameter value + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// An array containing values of the first parameter value + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// An array containing values of the first parameter value + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Alternate to `a`. Builds a linear space of a coordinates. Use with `da` where `a0` is the starting coordinate and `da` the step. + static member inline a0 (value: int) = Interop.mkPlotAttr "a0" value + /// Alternate to `a`. Builds a linear space of a coordinates. Use with `da` where `a0` is the starting coordinate and `da` the step. + static member inline a0 (value: float) = Interop.mkPlotAttr "a0" value + /// Sets the a coordinate step. See `a0` for more info. + static member inline da (value: int) = Interop.mkPlotAttr "da" value + /// Sets the a coordinate step. See `a0` for more info. + static member inline da (value: float) = Interop.mkPlotAttr "da" value + /// A two dimensional array of y coordinates at each carpet point. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// A two dimensional array of y coordinates at each carpet point. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// A two dimensional array of y coordinates at each carpet point. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// A two dimensional array of y coordinates at each carpet point. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Alternate to `b`. Builds a linear space of a coordinates. Use with `db` where `b0` is the starting coordinate and `db` the step. + static member inline b0 (value: int) = Interop.mkPlotAttr "b0" value + /// Alternate to `b`. Builds a linear space of a coordinates. Use with `db` where `b0` is the starting coordinate and `db` the step. + static member inline b0 (value: float) = Interop.mkPlotAttr "b0" value + /// Sets the b coordinate step. See `b0` for more info. + static member inline db (value: int) = Interop.mkPlotAttr "db" value + /// Sets the b coordinate step. See `b0` for more info. + static member inline db (value: float) = Interop.mkPlotAttr "db" value + /// The shift applied to each successive row of data in creating a cheater plot. Only used if `x` is been ommitted. + static member inline cheaterslope (value: int) = Interop.mkPlotAttr "cheaterslope" value + /// The shift applied to each successive row of data in creating a cheater plot. Only used if `x` is been ommitted. + static member inline cheaterslope (value: float) = Interop.mkPlotAttr "cheaterslope" value + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for y . + static member inline ysrc (value: string) = Interop.mkPlotAttr "ysrc" value + /// Sets the source reference on plot.ly for a . + static member inline asrc (value: string) = Interop.mkPlotAttr "asrc" value + /// Sets the source reference on plot.ly for b . + static member inline bsrc (value: string) = Interop.mkPlotAttr "bsrc" value + + module carpet = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type aaxis = + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Determines whether or not this axis is zoom-able. If true, then zoom is disabled. + static member inline fixedrange (value: bool) = Interop.mkPlotAttr "fixedrange" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Extra padding between label and the axis + static member inline labelpadding (value: int) = Interop.mkPlotAttr "labelpadding" value + /// Sets a axis label prefix. + static member inline labelprefix (value: string) = Interop.mkPlotAttr "labelprefix" value + /// Sets a axis label suffix. + static member inline labelsuffix (value: string) = Interop.mkPlotAttr "labelsuffix" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Sets the axis line color. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the axis line. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the axis line. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the number of minor grid ticks per major grid tick + static member inline minorgridcount (value: int) = Interop.mkPlotAttr "minorgridcount" value + /// Sets the width (in px) of the grid lines. + static member inline minorgridwidth (value: int) = Interop.mkPlotAttr "minorgridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline minorgridwidth (value: float) = Interop.mkPlotAttr "minorgridwidth" value + /// Sets the color of the grid lines. + static member inline minorgridcolor (value: string) = Interop.mkPlotAttr "minorgridcolor" value + /// Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines. + static member inline startline (value: bool) = Interop.mkPlotAttr "startline" value + /// Sets the line color of the start line. + static member inline startlinecolor (value: string) = Interop.mkPlotAttr "startlinecolor" value + /// Sets the width (in px) of the start line. + static member inline startlinewidth (value: int) = Interop.mkPlotAttr "startlinewidth" value + /// Sets the width (in px) of the start line. + static member inline startlinewidth (value: float) = Interop.mkPlotAttr "startlinewidth" value + /// Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines. + static member inline endline (value: bool) = Interop.mkPlotAttr "endline" value + /// Sets the width (in px) of the end line. + static member inline endlinewidth (value: int) = Interop.mkPlotAttr "endlinewidth" value + /// Sets the width (in px) of the end line. + static member inline endlinewidth (value: float) = Interop.mkPlotAttr "endlinewidth" value + /// Sets the line color of the end line. + static member inline endlinecolor (value: string) = Interop.mkPlotAttr "endlinecolor" value + /// The starting index of grid lines along the axis + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// The starting index of grid lines along the axis + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// The stride between grid lines along the axis + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// The stride between grid lines along the axis + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// The starting index of grid lines along the axis + static member inline arraytick0 (value: int) = Interop.mkPlotAttr "arraytick0" value + /// The stride between grid lines along the axis + static member inline arraydtick (value: int) = Interop.mkPlotAttr "arraydtick" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + + module aaxis = + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. + [] + type rangemode = + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + + [] + type cheatertype = + static member inline index = Interop.mkPlotAttr "cheatertype" "index" + static member inline value = Interop.mkPlotAttr "cheatertype" "value" + + [] + type tickmode = + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis. + [] + type showticklabels = + static member inline start = Interop.mkPlotAttr "showticklabels" "start" + static member inline end' = Interop.mkPlotAttr "showticklabels" "end" + static member inline both = Interop.mkPlotAttr "showticklabels" "both" + static member inline none = Interop.mkPlotAttr "showticklabels" "none" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// An additional amount by which to offset the title from the tick labels, given in pixels. Note that this used to be set by the now deprecated `titleoffset` attribute. + static member inline offset (value: int) = Interop.mkPlotAttr "offset" value + /// An additional amount by which to offset the title from the tick labels, given in pixels. Note that this used to be set by the now deprecated `titleoffset` attribute. + static member inline offset (value: float) = Interop.mkPlotAttr "offset" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type baxis = + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Determines whether or not this axis is zoom-able. If true, then zoom is disabled. + static member inline fixedrange (value: bool) = Interop.mkPlotAttr "fixedrange" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Extra padding between label and the axis + static member inline labelpadding (value: int) = Interop.mkPlotAttr "labelpadding" value + /// Sets a axis label prefix. + static member inline labelprefix (value: string) = Interop.mkPlotAttr "labelprefix" value + /// Sets a axis label suffix. + static member inline labelsuffix (value: string) = Interop.mkPlotAttr "labelsuffix" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Sets the axis line color. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the axis line. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the axis line. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the number of minor grid ticks per major grid tick + static member inline minorgridcount (value: int) = Interop.mkPlotAttr "minorgridcount" value + /// Sets the width (in px) of the grid lines. + static member inline minorgridwidth (value: int) = Interop.mkPlotAttr "minorgridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline minorgridwidth (value: float) = Interop.mkPlotAttr "minorgridwidth" value + /// Sets the color of the grid lines. + static member inline minorgridcolor (value: string) = Interop.mkPlotAttr "minorgridcolor" value + /// Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines. + static member inline startline (value: bool) = Interop.mkPlotAttr "startline" value + /// Sets the line color of the start line. + static member inline startlinecolor (value: string) = Interop.mkPlotAttr "startlinecolor" value + /// Sets the width (in px) of the start line. + static member inline startlinewidth (value: int) = Interop.mkPlotAttr "startlinewidth" value + /// Sets the width (in px) of the start line. + static member inline startlinewidth (value: float) = Interop.mkPlotAttr "startlinewidth" value + /// Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines. + static member inline endline (value: bool) = Interop.mkPlotAttr "endline" value + /// Sets the width (in px) of the end line. + static member inline endlinewidth (value: int) = Interop.mkPlotAttr "endlinewidth" value + /// Sets the width (in px) of the end line. + static member inline endlinewidth (value: float) = Interop.mkPlotAttr "endlinewidth" value + /// Sets the line color of the end line. + static member inline endlinecolor (value: string) = Interop.mkPlotAttr "endlinecolor" value + /// The starting index of grid lines along the axis + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// The starting index of grid lines along the axis + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// The stride between grid lines along the axis + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// The stride between grid lines along the axis + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// The starting index of grid lines along the axis + static member inline arraytick0 (value: int) = Interop.mkPlotAttr "arraytick0" value + /// The stride between grid lines along the axis + static member inline arraydtick (value: int) = Interop.mkPlotAttr "arraydtick" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + + module baxis = + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. + [] + type rangemode = + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + + [] + type cheatertype = + static member inline index = Interop.mkPlotAttr "cheatertype" "index" + static member inline value = Interop.mkPlotAttr "cheatertype" "value" + + [] + type tickmode = + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis. + [] + type showticklabels = + static member inline start = Interop.mkPlotAttr "showticklabels" "start" + static member inline end' = Interop.mkPlotAttr "showticklabels" "end" + static member inline both = Interop.mkPlotAttr "showticklabels" "both" + static member inline none = Interop.mkPlotAttr "showticklabels" "none" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// An additional amount by which to offset the title from the tick labels, given in pixels. Note that this used to be set by the now deprecated `titleoffset` attribute. + static member inline offset (value: int) = Interop.mkPlotAttr "offset" value + /// An additional amount by which to offset the title from the tick labels, given in pixels. Note that this used to be set by the now deprecated `titleoffset` attribute. + static member inline offset (value: float) = Interop.mkPlotAttr "offset" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type scattercarpet = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie + static member inline carpet (value: string) = Interop.mkPlotAttr "carpet" value + /// Sets the a-axis coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the a-axis coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the a-axis coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the a-axis coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the b-axis coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the b-axis coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the b-axis coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the b-axis coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `a`, `b` and `text`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*. + static member inline hoveron (values: seq) = Interop.mkPlotAttr "hoveron" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for a . + static member inline asrc (value: string) = Interop.mkPlotAttr "asrc" value + /// Sets the source reference on plot.ly for b . + static member inline bsrc (value: string) = Interop.mkPlotAttr "bsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module scattercarpet = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + static member inline tonext = Interop.mkPlotAttr "fill" "tonext" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + + module line = + /// Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes. + [] + type shape = + static member inline linear = Interop.mkPlotAttr "shape" "linear" + static member inline spline = Interop.mkPlotAttr "shape" "spline" + + [] + type marker = + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: int) = Interop.mkPlotAttr "maxdisplayed" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: float) = Interop.mkPlotAttr "maxdisplayed" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type gradient = + /// Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for type . + static member inline typesrc (value: string) = Interop.mkPlotAttr "typesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module gradient = + /// Sets the type of gradient used to fill the markers + [] + type type' = + static member inline radial = Interop.mkPlotAttr "type" "radial" + static member inline horizontal = Interop.mkPlotAttr "type" "horizontal" + static member inline vertical = Interop.mkPlotAttr "type" "vertical" + static member inline none = Interop.mkPlotAttr "type" "none" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type contourcarpet = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// The `carpet` of the carpet axes on which this contour trace lies + static member inline carpet (value: string) = Interop.mkPlotAttr "carpet" value + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the z data. + static member inline z (values: seq) = Interop.mkPlotAttr "z" values + /// Sets the x coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the x coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the x coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Sets the x coordinates. + static member inline a (values: seq) = Interop.mkPlotAttr "a" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (value: bool) = Interop.mkPlotAttr "a0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (values: seq) = Interop.mkPlotAttr "a0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (value: string) = Interop.mkPlotAttr "a0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (values: seq) = Interop.mkPlotAttr "a0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (value: int) = Interop.mkPlotAttr "a0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (values: seq) = Interop.mkPlotAttr "a0" values + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (value: float) = Interop.mkPlotAttr "a0" value + /// Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step. + static member inline a0 (values: seq) = Interop.mkPlotAttr "a0" values + /// Sets the x coordinate step. See `x0` for more info. + static member inline da (value: int) = Interop.mkPlotAttr "da" value + /// Sets the x coordinate step. See `x0` for more info. + static member inline da (value: float) = Interop.mkPlotAttr "da" value + /// Sets the y coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the y coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the y coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Sets the y coordinates. + static member inline b (values: seq) = Interop.mkPlotAttr "b" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (value: bool) = Interop.mkPlotAttr "b0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (values: seq) = Interop.mkPlotAttr "b0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (value: string) = Interop.mkPlotAttr "b0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (values: seq) = Interop.mkPlotAttr "b0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (value: int) = Interop.mkPlotAttr "b0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (values: seq) = Interop.mkPlotAttr "b0" values + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (value: float) = Interop.mkPlotAttr "b0" value + /// Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step. + static member inline b0 (values: seq) = Interop.mkPlotAttr "b0" values + /// Sets the y coordinate step. See `y0` for more info. + static member inline db (value: int) = Interop.mkPlotAttr "db" value + /// Sets the y coordinate step. See `y0` for more info. + static member inline db (value: float) = Interop.mkPlotAttr "db" value + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Sets the text elements associated with each z value. + static member inline text (values: seq) = Interop.mkPlotAttr "text" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Same as `text`. + static member inline hovertext (values: seq) = Interop.mkPlotAttr "hovertext" values + /// Transposes the z data. + static member inline transpose (value: bool) = Interop.mkPlotAttr "transpose" value + /// Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`. + static member inline autocontour (value: bool) = Interop.mkPlotAttr "autocontour" value + /// Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing. + static member inline ncontours (value: int) = Interop.mkPlotAttr "ncontours" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user. + static member inline zauto (value: bool) = Interop.mkPlotAttr "zauto" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: int) = Interop.mkPlotAttr "zmin" value + /// Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well. + static member inline zmin (value: float) = Interop.mkPlotAttr "zmin" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: int) = Interop.mkPlotAttr "zmax" value + /// Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well. + static member inline zmax (value: float) = Interop.mkPlotAttr "zmax" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: int) = Interop.mkPlotAttr "zmid" value + /// Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`. + static member inline zmid (value: float) = Interop.mkPlotAttr "zmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for z . + static member inline zsrc (value: string) = Interop.mkPlotAttr "zsrc" value + /// Sets the source reference on plot.ly for a . + static member inline asrc (value: string) = Interop.mkPlotAttr "asrc" value + /// Sets the source reference on plot.ly for b . + static member inline bsrc (value: string) = Interop.mkPlotAttr "bsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + + module contourcarpet = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided). + [] + type atype = + static member inline array = Interop.mkPlotAttr "atype" "array" + static member inline scaled = Interop.mkPlotAttr "atype" "scaled" + + /// If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided) + [] + type btype = + static member inline array = Interop.mkPlotAttr "btype" "array" + static member inline scaled = Interop.mkPlotAttr "btype" "scaled" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + [] + type contours = + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: int) = Interop.mkPlotAttr "start" value + /// Sets the starting contour level value. Must be less than `contours.end` + static member inline start (value: float) = Interop.mkPlotAttr "start" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: int) = Interop.mkPlotAttr "end" value + /// Sets the end contour level value. Must be more than `contours.start` + static member inline end' (value: float) = Interop.mkPlotAttr "end" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the step between each contour level. Must be positive. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*. + static member inline showlines (value: bool) = Interop.mkPlotAttr "showlines" value + /// Determines whether to label the contour lines with their values. + static member inline showlabels (value: bool) = Interop.mkPlotAttr "showlabels" value + /// Sets the contour label formatting rule using d3 formatting mini-language which is very similar to Python, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format + static member inline labelformat (value: string) = Interop.mkPlotAttr "labelformat" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + + module contours = + /// If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters. + [] + type type' = + static member inline levels = Interop.mkPlotAttr "type" "levels" + static member inline constraint' = Interop.mkPlotAttr "type" "constraint" + + /// Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace. + [] + type coloring = + static member inline fill = Interop.mkPlotAttr "coloring" "fill" + static member inline lines = Interop.mkPlotAttr "coloring" "lines" + static member inline none = Interop.mkPlotAttr "coloring" "none" + + /// Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms. + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + + [] + type labelfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + /// Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing. + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + /// Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing. + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type ohlc = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Sets the width of the open/close tick marks relative to the *x* minimal interval. + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the width of the open/close tick marks relative to the *x* minimal interval. + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for open . + static member inline opensrc (value: string) = Interop.mkPlotAttr "opensrc" value + /// Sets the source reference on plot.ly for high . + static member inline highsrc (value: string) = Interop.mkPlotAttr "highsrc" value + /// Sets the source reference on plot.ly for low . + static member inline lowsrc (value: string) = Interop.mkPlotAttr "lowsrc" value + /// Sets the source reference on plot.ly for close . + static member inline closesrc (value: string) = Interop.mkPlotAttr "closesrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + + module ohlc = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// [object Object] Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// [object Object] Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). Note that this style setting can also be set per direction via `increasing.line.dash` and `decreasing.line.dash`. + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + + module increasing = + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + + module decreasing = + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Show hover information (open, close, high, low) in separate labels. + static member inline split (value: bool) = Interop.mkPlotAttr "split" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type candlestick = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the x coordinates. If absent, linear coordinate will be generated. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the open values. + static member inline open' (values: seq) = Interop.mkPlotAttr "open" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the high values. + static member inline high (values: seq) = Interop.mkPlotAttr "high" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the low values. + static member inline low (values: seq) = Interop.mkPlotAttr "low" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets the close values. + static member inline close (values: seq) = Interop.mkPlotAttr "close" values + /// Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Sets the width of the whiskers relative to the box' width. For example, with 1, the whiskers are as wide as the box(es). + static member inline whiskerwidth (value: int) = Interop.mkPlotAttr "whiskerwidth" value + /// Sets the width of the whiskers relative to the box' width. For example, with 1, the whiskers are as wide as the box(es). + static member inline whiskerwidth (value: float) = Interop.mkPlotAttr "whiskerwidth" value + /// Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on. + static member inline xaxis (values: seq) = Interop.mkPlotAttr "xaxis" values + /// Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on. + static member inline yaxis (values: seq) = Interop.mkPlotAttr "yaxis" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for x . + static member inline xsrc (value: string) = Interop.mkPlotAttr "xsrc" value + /// Sets the source reference on plot.ly for open . + static member inline opensrc (value: string) = Interop.mkPlotAttr "opensrc" value + /// Sets the source reference on plot.ly for high . + static member inline highsrc (value: string) = Interop.mkPlotAttr "highsrc" value + /// Sets the source reference on plot.ly for low . + static member inline lowsrc (value: string) = Interop.mkPlotAttr "lowsrc" value + /// Sets the source reference on plot.ly for close . + static member inline closesrc (value: string) = Interop.mkPlotAttr "closesrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set. + static member inline boxgap (value: int) = Interop.mkPlotAttr "boxgap" value + /// Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set. + static member inline boxgap (value: float) = Interop.mkPlotAttr "boxgap" value + /// Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set. + static member inline boxgroupgap (value: int) = Interop.mkPlotAttr "boxgroupgap" value + /// Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set. + static member inline boxgroupgap (value: float) = Interop.mkPlotAttr "boxgroupgap" value + + module candlestick = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the calendar system to use with `x` date data. + [] + type xcalendar = + static member inline gregorian = Interop.mkPlotAttr "xcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "xcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "xcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "xcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "xcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "xcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "xcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "xcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "xcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "xcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "xcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "xcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "xcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "xcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "xcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "xcalendar" "ummalqura" + + /// Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set. + [] + type boxmode = + static member inline group = Interop.mkPlotAttr "boxmode" "group" + static member inline overlay = Interop.mkPlotAttr "boxmode" "overlay" + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the width (in px) of line bounding the box(es). Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of line bounding the box(es). Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type increasing = + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + + module increasing = + [] + type line = + /// Sets the color of line bounding the box(es). + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of line bounding the box(es). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of line bounding the box(es). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type decreasing = + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + + module decreasing = + [] + type line = + /// Sets the color of line bounding the box(es). + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the width (in px) of line bounding the box(es). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of line bounding the box(es). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Show hover information (open, close, high, low) in separate labels. + static member inline split (value: bool) = Interop.mkPlotAttr "split" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type scatterpolar = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: bool) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: string) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: int) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: float) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Sets the r coordinate step. + static member inline dr (value: int) = Interop.mkPlotAttr "dr" value + /// Sets the r coordinate step. + static member inline dr (value: float) = Interop.mkPlotAttr "dr" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: bool) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: string) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: int) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: float) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates. + static member inline dtheta (value: int) = Interop.mkPlotAttr "dtheta" value + /// Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates. + static member inline dtheta (value: float) = Interop.mkPlotAttr "dtheta" value + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `r`, `theta` and `text`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*. + static member inline cliponaxis (value: bool) = Interop.mkPlotAttr "cliponaxis" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*. + static member inline hoveron (values: seq) = Interop.mkPlotAttr "hoveron" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on. + static member inline subplot (values: seq) = Interop.mkPlotAttr "subplot" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for r . + static member inline rsrc (value: string) = Interop.mkPlotAttr "rsrc" value + /// Sets the source reference on plot.ly for theta . + static member inline thetasrc (value: string) = Interop.mkPlotAttr "thetasrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + + module scatterpolar = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes. + [] + type thetaunit = + static member inline radians = Interop.mkPlotAttr "thetaunit" "radians" + static member inline degrees = Interop.mkPlotAttr "thetaunit" "degrees" + static member inline gradians = Interop.mkPlotAttr "thetaunit" "gradians" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + /// Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterpolar has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + static member inline tonext = Interop.mkPlotAttr "fill" "tonext" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline dash (value: string) = Interop.mkPlotAttr "dash" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: int) = Interop.mkPlotAttr "smoothing" value + /// Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape). + static member inline smoothing (value: float) = Interop.mkPlotAttr "smoothing" value + + module line = + /// Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes. + [] + type shape = + static member inline linear = Interop.mkPlotAttr "shape" "linear" + static member inline spline = Interop.mkPlotAttr "shape" "spline" + + [] + type marker = + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: int) = Interop.mkPlotAttr "maxdisplayed" value + /// Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit. + static member inline maxdisplayed (value: float) = Interop.mkPlotAttr "maxdisplayed" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type gradient = + /// Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for type . + static member inline typesrc (value: string) = Interop.mkPlotAttr "typesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module gradient = + /// Sets the type of gradient used to fill the markers + [] + type type' = + static member inline radial = Interop.mkPlotAttr "type" "radial" + static member inline horizontal = Interop.mkPlotAttr "type" "horizontal" + static member inline vertical = Interop.mkPlotAttr "type" "vertical" + static member inline none = Interop.mkPlotAttr "type" "none" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type scatterpolargl = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*. + static member inline mode (values: seq) = Interop.mkPlotAttr "mode" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: bool) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: string) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: int) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: float) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Sets the r coordinate step. + static member inline dr (value: int) = Interop.mkPlotAttr "dr" value + /// Sets the r coordinate step. + static member inline dr (value: float) = Interop.mkPlotAttr "dr" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: bool) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: string) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: int) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: float) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates. + static member inline dtheta (value: int) = Interop.mkPlotAttr "dtheta" value + /// Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates. + static member inline dtheta (value: float) = Interop.mkPlotAttr "dtheta" value + /// Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `r`, `theta` and `text`. + static member inline texttemplate (value: string) = Interop.mkPlotAttr "texttemplate" value + /// Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + static member inline connectgaps (value: bool) = Interop.mkPlotAttr "connectgaps" value + /// Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. + static member inline fillcolor (value: string) = Interop.mkPlotAttr "fillcolor" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on. + static member inline subplot (values: seq) = Interop.mkPlotAttr "subplot" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for r . + static member inline rsrc (value: string) = Interop.mkPlotAttr "rsrc" value + /// Sets the source reference on plot.ly for theta . + static member inline thetasrc (value: string) = Interop.mkPlotAttr "thetasrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for texttemplate . + static member inline texttemplatesrc (value: string) = Interop.mkPlotAttr "texttemplatesrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the source reference on plot.ly for textposition . + static member inline textpositionsrc (value: string) = Interop.mkPlotAttr "textpositionsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + + module scatterpolargl = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes. + [] + type thetaunit = + static member inline radians = Interop.mkPlotAttr "thetaunit" "radians" + static member inline degrees = Interop.mkPlotAttr "thetaunit" "degrees" + static member inline gradians = Interop.mkPlotAttr "thetaunit" "gradians" + + /// Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order. + [] + type fill = + static member inline none = Interop.mkPlotAttr "fill" "none" + static member inline tozeroy = Interop.mkPlotAttr "fill" "tozeroy" + static member inline tozerox = Interop.mkPlotAttr "fill" "tozerox" + static member inline tonexty = Interop.mkPlotAttr "fill" "tonexty" + static member inline tonextx = Interop.mkPlotAttr "fill" "tonextx" + static member inline toself = Interop.mkPlotAttr "fill" "toself" + static member inline tonext = Interop.mkPlotAttr "fill" "tonext" + + /// Sets the positions of the `text` elements with respects to the (x,y) coordinates. + [] + type textposition = + static member inline topLeft = Interop.mkPlotAttr "textposition" "top left" + static member inline topCenter = Interop.mkPlotAttr "textposition" "top center" + static member inline topRight = Interop.mkPlotAttr "textposition" "top right" + static member inline middleLeft = Interop.mkPlotAttr "textposition" "middle left" + static member inline middleCenter = Interop.mkPlotAttr "textposition" "middle center" + static member inline middleRight = Interop.mkPlotAttr "textposition" "middle right" + static member inline bottomLeft = Interop.mkPlotAttr "textposition" "bottom left" + static member inline bottomCenter = Interop.mkPlotAttr "textposition" "bottom center" + static member inline bottomRight = Interop.mkPlotAttr "textposition" "bottom right" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type line = + /// Sets the line color. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the line width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the line width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + + module line = + /// Determines the line shape. The values correspond to step-wise line shapes. + [] + type shape = + static member inline linear = Interop.mkPlotAttr "shape" "linear" + static member inline hv = Interop.mkPlotAttr "shape" "hv" + static member inline vh = Interop.mkPlotAttr "shape" "vh" + static member inline hvh = Interop.mkPlotAttr "shape" "hvh" + static member inline vhv = Interop.mkPlotAttr "shape" "vhv" + + /// Sets the style of the lines. + [] + type dash = + static member inline solid = Interop.mkPlotAttr "dash" "solid" + static member inline dot = Interop.mkPlotAttr "dash" "dot" + static member inline dash = Interop.mkPlotAttr "dash" "dash" + static member inline longdash = Interop.mkPlotAttr "dash" "longdash" + static member inline dashdot = Interop.mkPlotAttr "dash" "dashdot" + static member inline longdashdot = Interop.mkPlotAttr "dash" "longdashdot" + + [] + type marker = + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: int) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`. + static member inline sizeref (value: float) = Interop.mkPlotAttr "sizeref" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: int) = Interop.mkPlotAttr "sizemin" value + /// Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points. + static member inline sizemin (value: float) = Interop.mkPlotAttr "sizemin" value + /// Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + /// Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + + /// Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels. + [] + type sizemode = + static member inline diameter = Interop.mkPlotAttr "sizemode" "diameter" + static member inline area = Interop.mkPlotAttr "sizemode" "area" + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type line = + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + + [] + type textfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of selected points. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of selected points. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Sets the marker size of unselected points, applied only when a selection exists. + static member inline size (value: float) = Interop.mkPlotAttr "size" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type barpolar = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: bool) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: string) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: int) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (value: float) = Interop.mkPlotAttr "selectedpoints" value + /// Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect. + static member inline selectedpoints (values: seq) = Interop.mkPlotAttr "selectedpoints" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the radial coordinates + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Sets the angular coordinates + static member inline theta (values: seq) = Interop.mkPlotAttr "theta" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: bool) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: string) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: int) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (value: float) = Interop.mkPlotAttr "r0" value + /// Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step. + static member inline r0 (values: seq) = Interop.mkPlotAttr "r0" values + /// Sets the r coordinate step. + static member inline dr (value: int) = Interop.mkPlotAttr "dr" value + /// Sets the r coordinate step. + static member inline dr (value: float) = Interop.mkPlotAttr "dr" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: bool) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: string) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: int) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (value: float) = Interop.mkPlotAttr "theta0" value + /// Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step. + static member inline theta0 (values: seq) = Interop.mkPlotAttr "theta0" values + /// Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates. + static member inline dtheta (value: int) = Interop.mkPlotAttr "dtheta" value + /// Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates. + static member inline dtheta (value: float) = Interop.mkPlotAttr "dtheta" value + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: bool) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: string) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: int) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (value: float) = Interop.mkPlotAttr "base" value + /// Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead. + static member inline base' (values: seq) = Interop.mkPlotAttr "base" values + /// Shifts the angular position where the bar is drawn (in *thetatunit* units). + static member inline offset (value: int) = Interop.mkPlotAttr "offset" value + /// Shifts the angular position where the bar is drawn (in *thetatunit* units). + static member inline offset (value: float) = Interop.mkPlotAttr "offset" value + /// Sets the bar angular width (in *thetaunit* units). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the bar angular width (in *thetaunit* units). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Same as `text`. + static member inline hovertext (value: string) = Interop.mkPlotAttr "hovertext" value + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``. + static member inline hovertemplate (value: string) = Interop.mkPlotAttr "hovertemplate" value + /// Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on. + static member inline subplot (values: seq) = Interop.mkPlotAttr "subplot" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for r . + static member inline rsrc (value: string) = Interop.mkPlotAttr "rsrc" value + /// Sets the source reference on plot.ly for theta . + static member inline thetasrc (value: string) = Interop.mkPlotAttr "thetasrc" value + /// Sets the source reference on plot.ly for base . + static member inline basesrc (value: string) = Interop.mkPlotAttr "basesrc" value + /// Sets the source reference on plot.ly for offset . + static member inline offsetsrc (value: string) = Interop.mkPlotAttr "offsetsrc" value + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for text . + static member inline textsrc (value: string) = Interop.mkPlotAttr "textsrc" value + /// Sets the source reference on plot.ly for hovertext . + static member inline hovertextsrc (value: string) = Interop.mkPlotAttr "hovertextsrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for hovertemplate . + static member inline hovertemplatesrc (value: string) = Interop.mkPlotAttr "hovertemplatesrc" value + /// Sets the gap between bars of adjacent location coordinates. Values are unitless, they represent fractions of the minimum difference in bar positions in the data. + static member inline bargap (value: int) = Interop.mkPlotAttr "bargap" value + /// Sets the gap between bars of adjacent location coordinates. Values are unitless, they represent fractions of the minimum difference in bar positions in the data. + static member inline bargap (value: float) = Interop.mkPlotAttr "bargap" value + + module barpolar = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + /// Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes. + [] + type thetaunit = + static member inline radians = Interop.mkPlotAttr "thetaunit" "radians" + static member inline degrees = Interop.mkPlotAttr "thetaunit" "degrees" + static member inline gradians = Interop.mkPlotAttr "thetaunit" "gradians" + + /// Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars. + [] + type barmode = + static member inline stack = Interop.mkPlotAttr "barmode" "stack" + static member inline overlay = Interop.mkPlotAttr "barmode" "overlay" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the opacity of the bars. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the bars. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + [] + type line = + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the width (in px) of the lines bounding the marker points. + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis. + static member inline coloraxis (values: seq) = Interop.mkPlotAttr "coloraxis" values + /// Sets the source reference on plot.ly for width . + static member inline widthsrc (value: string) = Interop.mkPlotAttr "widthsrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module selected = + [] + type marker = + /// Sets the marker opacity of selected points. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of selected points. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// Sets the text font color of selected points. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + module unselected = + [] + type marker = + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the marker opacity of unselected points, applied only when a selection exists. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the marker color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type textfont = + /// Sets the text font color of unselected points, applied only when a selection exists. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type area = + /// Determines whether or not an item corresponding to this trace is shown in the legend. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items. + static member inline legendgroup (value: string) = Interop.mkPlotAttr "legendgroup" value + /// Sets the opacity of the trace. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Sets the opacity of the trace. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the trace name. The trace name appear as the legend item and on hover. + static member inline name (value: string) = Interop.mkPlotAttr "name" value + /// Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. + static member inline uid (value: string) = Interop.mkPlotAttr "uid" value + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type. + static member inline ids (values: seq) = Interop.mkPlotAttr "ids" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements + static member inline customdata (values: seq) = Interop.mkPlotAttr "customdata" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. + static member inline hoverinfo (values: seq) = Interop.mkPlotAttr "hoverinfo" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the radial coordinates for legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the radial coordinates for legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the radial coordinates for legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the radial coordinates for legacy polar chart only. + static member inline r (values: seq) = Interop.mkPlotAttr "r" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the angular coordinates for legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the angular coordinates for legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the angular coordinates for legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the angular coordinates for legacy polar chart only. + static member inline t (values: seq) = Interop.mkPlotAttr "t" values + /// Sets the source reference on plot.ly for ids . + static member inline idssrc (value: string) = Interop.mkPlotAttr "idssrc" value + /// Sets the source reference on plot.ly for customdata . + static member inline customdatasrc (value: string) = Interop.mkPlotAttr "customdatasrc" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + /// Sets the source reference on plot.ly for hoverinfo . + static member inline hoverinfosrc (value: string) = Interop.mkPlotAttr "hoverinfosrc" value + /// Sets the source reference on plot.ly for r . + static member inline rsrc (value: string) = Interop.mkPlotAttr "rsrc" value + /// Sets the source reference on plot.ly for t . + static member inline tsrc (value: string) = Interop.mkPlotAttr "tsrc" value + + module area = + /// Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible). + [] + type visible = + static member inline true' = Interop.mkPlotAttr "visible" true + static member inline false' = Interop.mkPlotAttr "visible" false + static member inline legendonly = Interop.mkPlotAttr "visible" "legendonly" + + [] + type hoverlabel = + /// Sets the background color of the hover labels for this trace + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the hover labels for this trace. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + /// Sets the source reference on plot.ly for bgcolor . + static member inline bgcolorsrc (value: string) = Interop.mkPlotAttr "bgcolorsrc" value + /// Sets the source reference on plot.ly for bordercolor . + static member inline bordercolorsrc (value: string) = Interop.mkPlotAttr "bordercolorsrc" value + /// Sets the source reference on plot.ly for align . + static member inline alignsrc (value: string) = Interop.mkPlotAttr "alignsrc" value + /// Sets the source reference on plot.ly for namelength . + static member inline namelengthsrc (value: string) = Interop.mkPlotAttr "namelengthsrc" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the source reference on plot.ly for family . + static member inline familysrc (value: string) = Interop.mkPlotAttr "familysrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + + [] + type stream = + /// The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details. + static member inline token (value: string) = Interop.mkPlotAttr "token" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: int) = Interop.mkPlotAttr "maxpoints" value + /// Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot. + static member inline maxpoints (value: float) = Interop.mkPlotAttr "maxpoints" value + + module transforms = + [] + type aggregate = + /// Determines whether this aggregate transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate. + static member inline groups (value: string) = Interop.mkPlotAttr "groups" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type filter = + /// Determines whether this filter transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: bool) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: string) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: int) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (value: float) = Interop.mkPlotAttr "value" value + /// Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements. + static member inline value (values: seq) = Interop.mkPlotAttr "value" values + /// Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*. + static member inline preservegaps (value: bool) = Interop.mkPlotAttr "preservegaps" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module filter = + /// Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values + [] + type operation = + static member inline eq = Interop.mkPlotAttr "operation" "=" + static member inline notEq = Interop.mkPlotAttr "operation" "!=" + static member inline lt = Interop.mkPlotAttr "operation" "<" + static member inline gtEq = Interop.mkPlotAttr "operation" ">=" + static member inline gt = Interop.mkPlotAttr "operation" ">" + static member inline ltEq = Interop.mkPlotAttr "operation" "<=" + static member inline inclusiveRange = Interop.mkPlotAttr "operation" "[]" + static member inline exclusiveRange = Interop.mkPlotAttr "operation" "()" + static member inline leftIncLRightExcRange = Interop.mkPlotAttr "operation" "[)" + static member inline rightIncLeftExcRange = Interop.mkPlotAttr "operation" "(]" + static member inline inclusiveBounds = Interop.mkPlotAttr "operation" "][" + static member inline exclusiveBounds = Interop.mkPlotAttr "operation" ")(" + static member inline rightExcLeftIncBounds = Interop.mkPlotAttr "operation" "](" + static member inline leftExcRightIncBounds = Interop.mkPlotAttr "operation" ")[" + static member inline keepPresent = Interop.mkPlotAttr "operation" "{}" + static member inline filterPresent = Interop.mkPlotAttr "operation" "}{" + + /// Sets the calendar system to use for `value`, if it is a date. + [] + type valuecalendar = + static member inline gregorian = Interop.mkPlotAttr "valuecalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "valuecalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "valuecalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "valuecalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "valuecalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "valuecalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "valuecalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "valuecalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "valuecalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "valuecalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "valuecalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "valuecalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "valuecalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "valuecalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "valuecalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "valuecalendar" "ummalqura" + + /// Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided. + [] + type targetcalendar = + static member inline gregorian = Interop.mkPlotAttr "targetcalendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "targetcalendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "targetcalendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "targetcalendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "targetcalendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "targetcalendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "targetcalendar" "islamic" + static member inline julian = Interop.mkPlotAttr "targetcalendar" "julian" + static member inline mayan = Interop.mkPlotAttr "targetcalendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "targetcalendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "targetcalendar" "nepali" + static member inline persian = Interop.mkPlotAttr "targetcalendar" "persian" + static member inline jalali = Interop.mkPlotAttr "targetcalendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "targetcalendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "targetcalendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "targetcalendar" "ummalqura" + + [] + type groupby = + /// Determines whether this group-by transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]. + static member inline groups (values: seq) = Interop.mkPlotAttr "groups" values + /// Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\". + static member inline nameformat (value: string) = Interop.mkPlotAttr "nameformat" value + /// Sets the source reference on plot.ly for groups . + static member inline groupssrc (value: string) = Interop.mkPlotAttr "groupssrc" value + + [] + type sort = + /// Determines whether this sort transform is enabled or disabled. + static member inline enabled (value: bool) = Interop.mkPlotAttr "enabled" value + /// Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied. + static member inline target (value: string) = Interop.mkPlotAttr "target" value + /// Sets the source reference on plot.ly for target . + static member inline targetsrc (value: string) = Interop.mkPlotAttr "targetsrc" value + + module sort = + /// Sets the sort transform order. + [] + type order = + static member inline ascending = Interop.mkPlotAttr "order" "ascending" + static member inline descending = Interop.mkPlotAttr "order" "descending" + + [] + type marker = + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker size (in px). + static member inline size (value: int) = Interop.mkPlotAttr "size" value + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker size (in px). + static member inline size (value: float) = Interop.mkPlotAttr "size" value + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker opacity. + static member inline opacity (value: int) = Interop.mkPlotAttr "opacity" value + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker opacity. + static member inline opacity (value: float) = Interop.mkPlotAttr "opacity" value + /// Sets the source reference on plot.ly for color . + static member inline colorsrc (value: string) = Interop.mkPlotAttr "colorsrc" value + /// Sets the source reference on plot.ly for size . + static member inline sizesrc (value: string) = Interop.mkPlotAttr "sizesrc" value + /// Sets the source reference on plot.ly for symbol . + static member inline symbolsrc (value: string) = Interop.mkPlotAttr "symbolsrc" value + /// Sets the source reference on plot.ly for opacity . + static member inline opacitysrc (value: string) = Interop.mkPlotAttr "opacitysrc" value + + module marker = + /// Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name. + [] + type symbol = + static member inline _0 = Interop.mkPlotAttr "symbol" 0 + static member inline circle = Interop.mkPlotAttr "symbol" "circle" + static member inline _100 = Interop.mkPlotAttr "symbol" 100 + static member inline circleOpen = Interop.mkPlotAttr "symbol" "circle-open" + static member inline _200 = Interop.mkPlotAttr "symbol" 200 + static member inline circleDot = Interop.mkPlotAttr "symbol" "circle-dot" + static member inline _300 = Interop.mkPlotAttr "symbol" 300 + static member inline circleOpenDot = Interop.mkPlotAttr "symbol" "circle-open-dot" + static member inline _1 = Interop.mkPlotAttr "symbol" 1 + static member inline square = Interop.mkPlotAttr "symbol" "square" + static member inline _101 = Interop.mkPlotAttr "symbol" 101 + static member inline squareOpen = Interop.mkPlotAttr "symbol" "square-open" + static member inline _201 = Interop.mkPlotAttr "symbol" 201 + static member inline squareDot = Interop.mkPlotAttr "symbol" "square-dot" + static member inline _301 = Interop.mkPlotAttr "symbol" 301 + static member inline squareOpenDot = Interop.mkPlotAttr "symbol" "square-open-dot" + static member inline _2 = Interop.mkPlotAttr "symbol" 2 + static member inline diamond = Interop.mkPlotAttr "symbol" "diamond" + static member inline _102 = Interop.mkPlotAttr "symbol" 102 + static member inline diamondOpen = Interop.mkPlotAttr "symbol" "diamond-open" + static member inline _202 = Interop.mkPlotAttr "symbol" 202 + static member inline diamondDot = Interop.mkPlotAttr "symbol" "diamond-dot" + static member inline _302 = Interop.mkPlotAttr "symbol" 302 + static member inline diamondOpenDot = Interop.mkPlotAttr "symbol" "diamond-open-dot" + static member inline _3 = Interop.mkPlotAttr "symbol" 3 + static member inline cross = Interop.mkPlotAttr "symbol" "cross" + static member inline _103 = Interop.mkPlotAttr "symbol" 103 + static member inline crossOpen = Interop.mkPlotAttr "symbol" "cross-open" + static member inline _203 = Interop.mkPlotAttr "symbol" 203 + static member inline crossDot = Interop.mkPlotAttr "symbol" "cross-dot" + static member inline _303 = Interop.mkPlotAttr "symbol" 303 + static member inline crossOpenDot = Interop.mkPlotAttr "symbol" "cross-open-dot" + static member inline _4 = Interop.mkPlotAttr "symbol" 4 + static member inline x = Interop.mkPlotAttr "symbol" "x" + static member inline _104 = Interop.mkPlotAttr "symbol" 104 + static member inline xOpen = Interop.mkPlotAttr "symbol" "x-open" + static member inline _204 = Interop.mkPlotAttr "symbol" 204 + static member inline xDot = Interop.mkPlotAttr "symbol" "x-dot" + static member inline _304 = Interop.mkPlotAttr "symbol" 304 + static member inline xOpenDot = Interop.mkPlotAttr "symbol" "x-open-dot" + static member inline _5 = Interop.mkPlotAttr "symbol" 5 + static member inline triangleUp = Interop.mkPlotAttr "symbol" "triangle-up" + static member inline _105 = Interop.mkPlotAttr "symbol" 105 + static member inline triangleUpOpen = Interop.mkPlotAttr "symbol" "triangle-up-open" + static member inline _205 = Interop.mkPlotAttr "symbol" 205 + static member inline triangleUpDot = Interop.mkPlotAttr "symbol" "triangle-up-dot" + static member inline _305 = Interop.mkPlotAttr "symbol" 305 + static member inline triangleUpOpenDot = Interop.mkPlotAttr "symbol" "triangle-up-open-dot" + static member inline _6 = Interop.mkPlotAttr "symbol" 6 + static member inline triangleDown = Interop.mkPlotAttr "symbol" "triangle-down" + static member inline _106 = Interop.mkPlotAttr "symbol" 106 + static member inline triangleDownOpen = Interop.mkPlotAttr "symbol" "triangle-down-open" + static member inline _206 = Interop.mkPlotAttr "symbol" 206 + static member inline triangleDownDot = Interop.mkPlotAttr "symbol" "triangle-down-dot" + static member inline _306 = Interop.mkPlotAttr "symbol" 306 + static member inline triangleDownOpenDot = Interop.mkPlotAttr "symbol" "triangle-down-open-dot" + static member inline _7 = Interop.mkPlotAttr "symbol" 7 + static member inline triangleLeft = Interop.mkPlotAttr "symbol" "triangle-left" + static member inline _107 = Interop.mkPlotAttr "symbol" 107 + static member inline triangleLeftOpen = Interop.mkPlotAttr "symbol" "triangle-left-open" + static member inline _207 = Interop.mkPlotAttr "symbol" 207 + static member inline triangleLeftDot = Interop.mkPlotAttr "symbol" "triangle-left-dot" + static member inline _307 = Interop.mkPlotAttr "symbol" 307 + static member inline triangleLeftOpenDot = Interop.mkPlotAttr "symbol" "triangle-left-open-dot" + static member inline _8 = Interop.mkPlotAttr "symbol" 8 + static member inline triangleRight = Interop.mkPlotAttr "symbol" "triangle-right" + static member inline _108 = Interop.mkPlotAttr "symbol" 108 + static member inline triangleRightOpen = Interop.mkPlotAttr "symbol" "triangle-right-open" + static member inline _208 = Interop.mkPlotAttr "symbol" 208 + static member inline triangleRightDot = Interop.mkPlotAttr "symbol" "triangle-right-dot" + static member inline _308 = Interop.mkPlotAttr "symbol" 308 + static member inline triangleRightOpenDot = Interop.mkPlotAttr "symbol" "triangle-right-open-dot" + static member inline _9 = Interop.mkPlotAttr "symbol" 9 + static member inline triangleNe = Interop.mkPlotAttr "symbol" "triangle-ne" + static member inline _109 = Interop.mkPlotAttr "symbol" 109 + static member inline triangleNeOpen = Interop.mkPlotAttr "symbol" "triangle-ne-open" + static member inline _209 = Interop.mkPlotAttr "symbol" 209 + static member inline triangleNeDot = Interop.mkPlotAttr "symbol" "triangle-ne-dot" + static member inline _309 = Interop.mkPlotAttr "symbol" 309 + static member inline triangleNeOpenDot = Interop.mkPlotAttr "symbol" "triangle-ne-open-dot" + static member inline _10 = Interop.mkPlotAttr "symbol" 10 + static member inline triangleSe = Interop.mkPlotAttr "symbol" "triangle-se" + static member inline _110 = Interop.mkPlotAttr "symbol" 110 + static member inline triangleSeOpen = Interop.mkPlotAttr "symbol" "triangle-se-open" + static member inline _210 = Interop.mkPlotAttr "symbol" 210 + static member inline triangleSeDot = Interop.mkPlotAttr "symbol" "triangle-se-dot" + static member inline _310 = Interop.mkPlotAttr "symbol" 310 + static member inline triangleSeOpenDot = Interop.mkPlotAttr "symbol" "triangle-se-open-dot" + static member inline _11 = Interop.mkPlotAttr "symbol" 11 + static member inline triangleSw = Interop.mkPlotAttr "symbol" "triangle-sw" + static member inline _111 = Interop.mkPlotAttr "symbol" 111 + static member inline triangleSwOpen = Interop.mkPlotAttr "symbol" "triangle-sw-open" + static member inline _211 = Interop.mkPlotAttr "symbol" 211 + static member inline triangleSwDot = Interop.mkPlotAttr "symbol" "triangle-sw-dot" + static member inline _311 = Interop.mkPlotAttr "symbol" 311 + static member inline triangleSwOpenDot = Interop.mkPlotAttr "symbol" "triangle-sw-open-dot" + static member inline _12 = Interop.mkPlotAttr "symbol" 12 + static member inline triangleNw = Interop.mkPlotAttr "symbol" "triangle-nw" + static member inline _112 = Interop.mkPlotAttr "symbol" 112 + static member inline triangleNwOpen = Interop.mkPlotAttr "symbol" "triangle-nw-open" + static member inline _212 = Interop.mkPlotAttr "symbol" 212 + static member inline triangleNwDot = Interop.mkPlotAttr "symbol" "triangle-nw-dot" + static member inline _312 = Interop.mkPlotAttr "symbol" 312 + static member inline triangleNwOpenDot = Interop.mkPlotAttr "symbol" "triangle-nw-open-dot" + static member inline _13 = Interop.mkPlotAttr "symbol" 13 + static member inline pentagon = Interop.mkPlotAttr "symbol" "pentagon" + static member inline _113 = Interop.mkPlotAttr "symbol" 113 + static member inline pentagonOpen = Interop.mkPlotAttr "symbol" "pentagon-open" + static member inline _213 = Interop.mkPlotAttr "symbol" 213 + static member inline pentagonDot = Interop.mkPlotAttr "symbol" "pentagon-dot" + static member inline _313 = Interop.mkPlotAttr "symbol" 313 + static member inline pentagonOpenDot = Interop.mkPlotAttr "symbol" "pentagon-open-dot" + static member inline _14 = Interop.mkPlotAttr "symbol" 14 + static member inline hexagon = Interop.mkPlotAttr "symbol" "hexagon" + static member inline _114 = Interop.mkPlotAttr "symbol" 114 + static member inline hexagonOpen = Interop.mkPlotAttr "symbol" "hexagon-open" + static member inline _214 = Interop.mkPlotAttr "symbol" 214 + static member inline hexagonDot = Interop.mkPlotAttr "symbol" "hexagon-dot" + static member inline _314 = Interop.mkPlotAttr "symbol" 314 + static member inline hexagonOpenDot = Interop.mkPlotAttr "symbol" "hexagon-open-dot" + static member inline _15 = Interop.mkPlotAttr "symbol" 15 + static member inline hexagon2 = Interop.mkPlotAttr "symbol" "hexagon2" + static member inline _115 = Interop.mkPlotAttr "symbol" 115 + static member inline hexagon2Open = Interop.mkPlotAttr "symbol" "hexagon2-open" + static member inline _215 = Interop.mkPlotAttr "symbol" 215 + static member inline hexagon2Dot = Interop.mkPlotAttr "symbol" "hexagon2-dot" + static member inline _315 = Interop.mkPlotAttr "symbol" 315 + static member inline hexagon2OpenDot = Interop.mkPlotAttr "symbol" "hexagon2-open-dot" + static member inline _16 = Interop.mkPlotAttr "symbol" 16 + static member inline octagon = Interop.mkPlotAttr "symbol" "octagon" + static member inline _116 = Interop.mkPlotAttr "symbol" 116 + static member inline octagonOpen = Interop.mkPlotAttr "symbol" "octagon-open" + static member inline _216 = Interop.mkPlotAttr "symbol" 216 + static member inline octagonDot = Interop.mkPlotAttr "symbol" "octagon-dot" + static member inline _316 = Interop.mkPlotAttr "symbol" 316 + static member inline octagonOpenDot = Interop.mkPlotAttr "symbol" "octagon-open-dot" + static member inline _17 = Interop.mkPlotAttr "symbol" 17 + static member inline star = Interop.mkPlotAttr "symbol" "star" + static member inline _117 = Interop.mkPlotAttr "symbol" 117 + static member inline starOpen = Interop.mkPlotAttr "symbol" "star-open" + static member inline _217 = Interop.mkPlotAttr "symbol" 217 + static member inline starDot = Interop.mkPlotAttr "symbol" "star-dot" + static member inline _317 = Interop.mkPlotAttr "symbol" 317 + static member inline starOpenDot = Interop.mkPlotAttr "symbol" "star-open-dot" + static member inline _18 = Interop.mkPlotAttr "symbol" 18 + static member inline hexagram = Interop.mkPlotAttr "symbol" "hexagram" + static member inline _118 = Interop.mkPlotAttr "symbol" 118 + static member inline hexagramOpen = Interop.mkPlotAttr "symbol" "hexagram-open" + static member inline _218 = Interop.mkPlotAttr "symbol" 218 + static member inline hexagramDot = Interop.mkPlotAttr "symbol" "hexagram-dot" + static member inline _318 = Interop.mkPlotAttr "symbol" 318 + static member inline hexagramOpenDot = Interop.mkPlotAttr "symbol" "hexagram-open-dot" + static member inline _19 = Interop.mkPlotAttr "symbol" 19 + static member inline starTriangleUp = Interop.mkPlotAttr "symbol" "star-triangle-up" + static member inline _119 = Interop.mkPlotAttr "symbol" 119 + static member inline starTriangleUpOpen = Interop.mkPlotAttr "symbol" "star-triangle-up-open" + static member inline _219 = Interop.mkPlotAttr "symbol" 219 + static member inline starTriangleUpDot = Interop.mkPlotAttr "symbol" "star-triangle-up-dot" + static member inline _319 = Interop.mkPlotAttr "symbol" 319 + static member inline starTriangleUpOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-up-open-dot" + static member inline _20 = Interop.mkPlotAttr "symbol" 20 + static member inline starTriangleDown = Interop.mkPlotAttr "symbol" "star-triangle-down" + static member inline _120 = Interop.mkPlotAttr "symbol" 120 + static member inline starTriangleDownOpen = Interop.mkPlotAttr "symbol" "star-triangle-down-open" + static member inline _220 = Interop.mkPlotAttr "symbol" 220 + static member inline starTriangleDownDot = Interop.mkPlotAttr "symbol" "star-triangle-down-dot" + static member inline _320 = Interop.mkPlotAttr "symbol" 320 + static member inline starTriangleDownOpenDot = Interop.mkPlotAttr "symbol" "star-triangle-down-open-dot" + static member inline _21 = Interop.mkPlotAttr "symbol" 21 + static member inline starSquare = Interop.mkPlotAttr "symbol" "star-square" + static member inline _121 = Interop.mkPlotAttr "symbol" 121 + static member inline starSquareOpen = Interop.mkPlotAttr "symbol" "star-square-open" + static member inline _221 = Interop.mkPlotAttr "symbol" 221 + static member inline starSquareDot = Interop.mkPlotAttr "symbol" "star-square-dot" + static member inline _321 = Interop.mkPlotAttr "symbol" 321 + static member inline starSquareOpenDot = Interop.mkPlotAttr "symbol" "star-square-open-dot" + static member inline _22 = Interop.mkPlotAttr "symbol" 22 + static member inline starDiamond = Interop.mkPlotAttr "symbol" "star-diamond" + static member inline _122 = Interop.mkPlotAttr "symbol" 122 + static member inline starDiamondOpen = Interop.mkPlotAttr "symbol" "star-diamond-open" + static member inline _222 = Interop.mkPlotAttr "symbol" 222 + static member inline starDiamondDot = Interop.mkPlotAttr "symbol" "star-diamond-dot" + static member inline _322 = Interop.mkPlotAttr "symbol" 322 + static member inline starDiamondOpenDot = Interop.mkPlotAttr "symbol" "star-diamond-open-dot" + static member inline _23 = Interop.mkPlotAttr "symbol" 23 + static member inline diamondTall = Interop.mkPlotAttr "symbol" "diamond-tall" + static member inline _123 = Interop.mkPlotAttr "symbol" 123 + static member inline diamondTallOpen = Interop.mkPlotAttr "symbol" "diamond-tall-open" + static member inline _223 = Interop.mkPlotAttr "symbol" 223 + static member inline diamondTallDot = Interop.mkPlotAttr "symbol" "diamond-tall-dot" + static member inline _323 = Interop.mkPlotAttr "symbol" 323 + static member inline diamondTallOpenDot = Interop.mkPlotAttr "symbol" "diamond-tall-open-dot" + static member inline _24 = Interop.mkPlotAttr "symbol" 24 + static member inline diamondWide = Interop.mkPlotAttr "symbol" "diamond-wide" + static member inline _124 = Interop.mkPlotAttr "symbol" 124 + static member inline diamondWideOpen = Interop.mkPlotAttr "symbol" "diamond-wide-open" + static member inline _224 = Interop.mkPlotAttr "symbol" 224 + static member inline diamondWideDot = Interop.mkPlotAttr "symbol" "diamond-wide-dot" + static member inline _324 = Interop.mkPlotAttr "symbol" 324 + static member inline diamondWideOpenDot = Interop.mkPlotAttr "symbol" "diamond-wide-open-dot" + static member inline _25 = Interop.mkPlotAttr "symbol" 25 + static member inline hourglass = Interop.mkPlotAttr "symbol" "hourglass" + static member inline _125 = Interop.mkPlotAttr "symbol" 125 + static member inline hourglassOpen = Interop.mkPlotAttr "symbol" "hourglass-open" + static member inline _26 = Interop.mkPlotAttr "symbol" 26 + static member inline bowtie = Interop.mkPlotAttr "symbol" "bowtie" + static member inline _126 = Interop.mkPlotAttr "symbol" 126 + static member inline bowtieOpen = Interop.mkPlotAttr "symbol" "bowtie-open" + static member inline _27 = Interop.mkPlotAttr "symbol" 27 + static member inline circleCross = Interop.mkPlotAttr "symbol" "circle-cross" + static member inline _127 = Interop.mkPlotAttr "symbol" 127 + static member inline circleCrossOpen = Interop.mkPlotAttr "symbol" "circle-cross-open" + static member inline _28 = Interop.mkPlotAttr "symbol" 28 + static member inline circleX = Interop.mkPlotAttr "symbol" "circle-x" + static member inline _128 = Interop.mkPlotAttr "symbol" 128 + static member inline circleXOpen = Interop.mkPlotAttr "symbol" "circle-x-open" + static member inline _29 = Interop.mkPlotAttr "symbol" 29 + static member inline squareCross = Interop.mkPlotAttr "symbol" "square-cross" + static member inline _129 = Interop.mkPlotAttr "symbol" 129 + static member inline squareCrossOpen = Interop.mkPlotAttr "symbol" "square-cross-open" + static member inline _30 = Interop.mkPlotAttr "symbol" 30 + static member inline squareX = Interop.mkPlotAttr "symbol" "square-x" + static member inline _130 = Interop.mkPlotAttr "symbol" 130 + static member inline squareXOpen = Interop.mkPlotAttr "symbol" "square-x-open" + static member inline _31 = Interop.mkPlotAttr "symbol" 31 + static member inline diamondCross = Interop.mkPlotAttr "symbol" "diamond-cross" + static member inline _131 = Interop.mkPlotAttr "symbol" 131 + static member inline diamondCrossOpen = Interop.mkPlotAttr "symbol" "diamond-cross-open" + static member inline _32 = Interop.mkPlotAttr "symbol" 32 + static member inline diamondX = Interop.mkPlotAttr "symbol" "diamond-x" + static member inline _132 = Interop.mkPlotAttr "symbol" 132 + static member inline diamondXOpen = Interop.mkPlotAttr "symbol" "diamond-x-open" + static member inline _33 = Interop.mkPlotAttr "symbol" 33 + static member inline crossThin = Interop.mkPlotAttr "symbol" "cross-thin" + static member inline _133 = Interop.mkPlotAttr "symbol" 133 + static member inline crossThinOpen = Interop.mkPlotAttr "symbol" "cross-thin-open" + static member inline _34 = Interop.mkPlotAttr "symbol" 34 + static member inline xThin = Interop.mkPlotAttr "symbol" "x-thin" + static member inline _134 = Interop.mkPlotAttr "symbol" 134 + static member inline xThinOpen = Interop.mkPlotAttr "symbol" "x-thin-open" + static member inline _35 = Interop.mkPlotAttr "symbol" 35 + static member inline asterisk = Interop.mkPlotAttr "symbol" "asterisk" + static member inline _135 = Interop.mkPlotAttr "symbol" 135 + static member inline asteriskOpen = Interop.mkPlotAttr "symbol" "asterisk-open" + static member inline _36 = Interop.mkPlotAttr "symbol" 36 + static member inline hash = Interop.mkPlotAttr "symbol" "hash" + static member inline _136 = Interop.mkPlotAttr "symbol" 136 + static member inline hashOpen = Interop.mkPlotAttr "symbol" "hash-open" + static member inline _236 = Interop.mkPlotAttr "symbol" 236 + static member inline hashDot = Interop.mkPlotAttr "symbol" "hash-dot" + static member inline _336 = Interop.mkPlotAttr "symbol" 336 + static member inline hashOpenDot = Interop.mkPlotAttr "symbol" "hash-open-dot" + static member inline _37 = Interop.mkPlotAttr "symbol" 37 + static member inline yUp = Interop.mkPlotAttr "symbol" "y-up" + static member inline _137 = Interop.mkPlotAttr "symbol" 137 + static member inline yUpOpen = Interop.mkPlotAttr "symbol" "y-up-open" + static member inline _38 = Interop.mkPlotAttr "symbol" 38 + static member inline yDown = Interop.mkPlotAttr "symbol" "y-down" + static member inline _138 = Interop.mkPlotAttr "symbol" 138 + static member inline yDownOpen = Interop.mkPlotAttr "symbol" "y-down-open" + static member inline _39 = Interop.mkPlotAttr "symbol" 39 + static member inline yLeft = Interop.mkPlotAttr "symbol" "y-left" + static member inline _139 = Interop.mkPlotAttr "symbol" 139 + static member inline yLeftOpen = Interop.mkPlotAttr "symbol" "y-left-open" + static member inline _40 = Interop.mkPlotAttr "symbol" 40 + static member inline yRight = Interop.mkPlotAttr "symbol" "y-right" + static member inline _140 = Interop.mkPlotAttr "symbol" 140 + static member inline yRightOpen = Interop.mkPlotAttr "symbol" "y-right-open" + static member inline _41 = Interop.mkPlotAttr "symbol" 41 + static member inline lineEw = Interop.mkPlotAttr "symbol" "line-ew" + static member inline _141 = Interop.mkPlotAttr "symbol" 141 + static member inline lineEwOpen = Interop.mkPlotAttr "symbol" "line-ew-open" + static member inline _42 = Interop.mkPlotAttr "symbol" 42 + static member inline lineNs = Interop.mkPlotAttr "symbol" "line-ns" + static member inline _142 = Interop.mkPlotAttr "symbol" 142 + static member inline lineNsOpen = Interop.mkPlotAttr "symbol" "line-ns-open" + static member inline _43 = Interop.mkPlotAttr "symbol" 43 + static member inline lineNe = Interop.mkPlotAttr "symbol" "line-ne" + static member inline _143 = Interop.mkPlotAttr "symbol" 143 + static member inline lineNeOpen = Interop.mkPlotAttr "symbol" "line-ne-open" + static member inline _44 = Interop.mkPlotAttr "symbol" 44 + static member inline lineNw = Interop.mkPlotAttr "symbol" "line-nw" + static member inline _144 = Interop.mkPlotAttr "symbol" 144 + static member inline lineNwOpen = Interop.mkPlotAttr "symbol" "line-nw-open" + diff --git a/src/Feliz.Plotly/Props/Layout.fs b/src/Feliz.Plotly/Props/Layout.fs new file mode 100644 index 0000000..64a0e93 --- /dev/null +++ b/src/Feliz.Plotly/Props/Layout.fs @@ -0,0 +1,4234 @@ +namespace Feliz.Plotly + +(*//////////////////////////////// +/// THIS FILE IS AUTO-GENERATED // +////////////////////////////////*) + +open System +open Browser.Types +open Fable.Core +open Fable.Core.JsInterop +open Feliz + +[] +type layout = + /// Determines whether or not a layout width or height that has been left undefined by the user is initialized on each relayout. Note that, regardless of this attribute, an undefined layout width or height is always initialized on the first call to plot. + static member inline autosize (value: bool) = Interop.mkPlotAttr "autosize" value + /// Sets the plot's width (in px). + static member inline width (value: int) = Interop.mkPlotAttr "width" value + /// Sets the plot's width (in px). + static member inline width (value: float) = Interop.mkPlotAttr "width" value + /// Sets the plot's height (in px). + static member inline height (value: int) = Interop.mkPlotAttr "height" value + /// Sets the plot's height (in px). + static member inline height (value: float) = Interop.mkPlotAttr "height" value + /// Sets the color of paper where the graph is drawn. + static member inline paper_bgcolor (value: string) = Interop.mkPlotAttr "paper_bgcolor" value + /// Sets the color of plotting area in-between x and y axes. + static member inline plot_bgcolor (value: string) = Interop.mkPlotAttr "plot_bgcolor" value + /// Sets the decimal and thousand separators. For example, *. * puts a '.' before decimals and a space between thousands. In English locales, dflt is *.,* but other locales may alter this default. + static member inline separators (value: string) = Interop.mkPlotAttr "separators" value + /// Determines whether or not a text link citing the data source is placed at the bottom-right cored of the figure. Has only an effect only on graphs that have been generated via forked graphs from the plotly service (at https://plot.ly or on-premise). + static member inline hidesources (value: bool) = Interop.mkPlotAttr "hidesources" value + /// Determines whether or not a legend is drawn. Default is `true` if there is a trace to show and any of these: a) Two or more traces would by default be shown in the legend. b) One pie trace is shown in the legend. c) One trace is explicitly given with `showlegend: true`. + static member inline showlegend (value: bool) = Interop.mkPlotAttr "showlegend" value + /// Sets the default trace colors. + static member inline colorway (values: seq) = Interop.mkPlotAttr "colorway" values + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (value: bool) = Interop.mkPlotAttr "datarevision" value + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (values: seq) = Interop.mkPlotAttr "datarevision" values + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (value: string) = Interop.mkPlotAttr "datarevision" value + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (values: seq) = Interop.mkPlotAttr "datarevision" values + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (value: int) = Interop.mkPlotAttr "datarevision" value + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (values: seq) = Interop.mkPlotAttr "datarevision" values + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (value: float) = Interop.mkPlotAttr "datarevision" value + /// If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data. + static member inline datarevision (values: seq) = Interop.mkPlotAttr "datarevision" values + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (value: bool) = Interop.mkPlotAttr "editrevision" value + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (values: seq) = Interop.mkPlotAttr "editrevision" values + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (value: string) = Interop.mkPlotAttr "editrevision" value + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (values: seq) = Interop.mkPlotAttr "editrevision" values + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (value: int) = Interop.mkPlotAttr "editrevision" value + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (values: seq) = Interop.mkPlotAttr "editrevision" values + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (value: float) = Interop.mkPlotAttr "editrevision" value + /// Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`. + static member inline editrevision (values: seq) = Interop.mkPlotAttr "editrevision" values + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (value: bool) = Interop.mkPlotAttr "selectionrevision" value + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (values: seq) = Interop.mkPlotAttr "selectionrevision" values + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (value: string) = Interop.mkPlotAttr "selectionrevision" value + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (values: seq) = Interop.mkPlotAttr "selectionrevision" values + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (value: int) = Interop.mkPlotAttr "selectionrevision" value + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (values: seq) = Interop.mkPlotAttr "selectionrevision" values + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (value: float) = Interop.mkPlotAttr "selectionrevision" value + /// Controls persistence of user-driven changes in selected points from all traces. + static member inline selectionrevision (values: seq) = Interop.mkPlotAttr "selectionrevision" values + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (value: bool) = Interop.mkPlotAttr "template" value + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (values: seq) = Interop.mkPlotAttr "template" values + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (value: string) = Interop.mkPlotAttr "template" value + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (values: seq) = Interop.mkPlotAttr "template" values + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (value: int) = Interop.mkPlotAttr "template" value + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (values: seq) = Interop.mkPlotAttr "template" values + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (value: float) = Interop.mkPlotAttr "template" value + /// Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`. + static member inline template (values: seq) = Interop.mkPlotAttr "template" values + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (value: bool) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (value: string) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (value: int) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (value: float) = Interop.mkPlotAttr "meta" value + /// Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}. + static member inline meta (values: seq) = Interop.mkPlotAttr "meta" values + /// Determines the mode of single click interactions. *event* is the default value and emits the `plotly_click` event. In addition this mode emits the `plotly_selected` event in drag modes *lasso* and *select*, but with no event data attached (kept for compatibility reasons). The *select* flag enables selecting single data points via click. This mode also supports persistent selections, meaning that pressing Shift while clicking, adds to / subtracts from an existing selection. *select* with `hovermode`: *x* can be confusing, consider explicitly setting `hovermode`: *closest* when using this feature. Selection events are sent accordingly as long as *event* flag is set as well. When the *event* flag is missing, `plotly_click` and `plotly_selected` events are not fired. + static member inline clickmode (values: seq) = Interop.mkPlotAttr "clickmode" values + /// Sets the default distance (in pixels) to look for data to add hover labels (-1 means no cutoff, 0 means no looking for data). This is only a real distance for hovering on point-like objects, like scatter points. For area-like objects (bars, scatter fills, etc) hovering is on inside the area and off outside, but these objects will not supersede hover on point-like objects in case of conflict. + static member inline hoverdistance (value: int) = Interop.mkPlotAttr "hoverdistance" value + /// Sets the default distance (in pixels) to look for data to draw spikelines to (-1 means no cutoff, 0 means no looking for data). As with hoverdistance, distance does not apply to area-like objects. In addition, some objects can be hovered on but will not generate spikelines, such as scatter fills. + static member inline spikedistance (value: int) = Interop.mkPlotAttr "spikedistance" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Rotates the entire polar by the given angle in legacy polar charts. + static member inline orientation (value: int) = Interop.mkPlotAttr "orientation" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Rotates the entire polar by the given angle in legacy polar charts. + static member inline orientation (value: float) = Interop.mkPlotAttr "orientation" value + /// Sets the source reference on plot.ly for meta . + static member inline metasrc (value: string) = Interop.mkPlotAttr "metasrc" value + +module layout = + /// Determines the mode of drag interactions. *select* and *lasso* apply only to scatter traces with markers or text. *orbit* and *turntable* apply only to 3D scenes. + [] + type dragmode = + static member inline zoom = Interop.mkPlotAttr "dragmode" "zoom" + static member inline pan = Interop.mkPlotAttr "dragmode" "pan" + static member inline select = Interop.mkPlotAttr "dragmode" "select" + static member inline lasso = Interop.mkPlotAttr "dragmode" "lasso" + static member inline orbit = Interop.mkPlotAttr "dragmode" "orbit" + static member inline turntable = Interop.mkPlotAttr "dragmode" "turntable" + static member inline false' = Interop.mkPlotAttr "dragmode" false + + /// Determines the mode of hover interactions. If `clickmode` includes the *select* flag, `hovermode` defaults to *closest*. If `clickmode` lacks the *select* flag, it defaults to *x* or *y* (depending on the trace's `orientation` value) for plots based on cartesian coordinates. For anything else the default value is *closest*. + [] + type hovermode = + static member inline x = Interop.mkPlotAttr "hovermode" "x" + static member inline y = Interop.mkPlotAttr "hovermode" "y" + static member inline closest = Interop.mkPlotAttr "hovermode" "closest" + static member inline false' = Interop.mkPlotAttr "hovermode" false + + /// When \"dragmode\" is set to \"select\", this limits the selection of the drag to horizontal, vertical or diagonal. \"h\" only allows horizontal selection, \"v\" only vertical, \"d\" only diagonal and \"any\" sets no limit. + [] + type selectdirection = + static member inline h = Interop.mkPlotAttr "selectdirection" "h" + static member inline v = Interop.mkPlotAttr "selectdirection" "v" + static member inline d = Interop.mkPlotAttr "selectdirection" "d" + static member inline any = Interop.mkPlotAttr "selectdirection" "any" + + /// Sets the default calendar system to use for interpreting and displaying dates throughout the plot. + [] + type calendar = + static member inline gregorian = Interop.mkPlotAttr "calendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "calendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "calendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "calendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "calendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "calendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "calendar" "islamic" + static member inline julian = Interop.mkPlotAttr "calendar" "julian" + static member inline mayan = Interop.mkPlotAttr "calendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "calendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "calendar" "nepali" + static member inline persian = Interop.mkPlotAttr "calendar" "persian" + static member inline jalali = Interop.mkPlotAttr "calendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "calendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "calendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "calendar" "ummalqura" + + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the direction corresponding to positive angles in legacy polar charts. + [] + type direction = + static member inline clockwise = Interop.mkPlotAttr "direction" "clockwise" + static member inline counterclockwise = Interop.mkPlotAttr "direction" "counterclockwise" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the plot's title. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + /// Sets the x position with respect to `xref` in normalized coordinates from *0* (left) to *1* (right). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position with respect to `xref` in normalized coordinates from *0* (left) to *1* (right). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the y position with respect to `yref` in normalized coordinates from *0* (bottom) to *1* (top). *auto* places the baseline of the title onto the vertical center of the top margin. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position with respect to `yref` in normalized coordinates from *0* (bottom) to *1* (top). *auto* places the baseline of the title onto the vertical center of the top margin. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + + module title = + /// Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only. + [] + type xref = + static member inline container = Interop.mkPlotAttr "xref" "container" + static member inline paper = Interop.mkPlotAttr "xref" "paper" + + /// Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only. + [] + type yref = + static member inline container = Interop.mkPlotAttr "yref" "container" + static member inline paper = Interop.mkPlotAttr "yref" "paper" + + /// Sets the title's horizontal alignment with respect to its x position. *left* means that the title starts at x, *right* means that the title ends at x and *center* means that the title's center is at x. *auto* divides `xref` by three and calculates the `xanchor` value automatically based on the value of `x`. + [] + type xanchor = + static member inline auto = Interop.mkPlotAttr "xanchor" "auto" + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets the title's vertical alignment with respect to its y position. *top* means that the title's cap line is at y, *bottom* means that the title's baseline is at y and *middle* means that the title's midline is at y. *auto* divides `yref` by three and calculates the `yanchor` value automatically based on the value of `y`. + [] + type yanchor = + static member inline auto = Interop.mkPlotAttr "yanchor" "auto" + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type pad = + /// The amount of padding (in px) along the top of the component. + static member inline t (value: int) = Interop.mkPlotAttr "t" value + /// The amount of padding (in px) along the top of the component. + static member inline t (value: float) = Interop.mkPlotAttr "t" value + /// The amount of padding (in px) on the right side of the component. + static member inline r (value: int) = Interop.mkPlotAttr "r" value + /// The amount of padding (in px) on the right side of the component. + static member inline r (value: float) = Interop.mkPlotAttr "r" value + /// The amount of padding (in px) along the bottom of the component. + static member inline b (value: int) = Interop.mkPlotAttr "b" value + /// The amount of padding (in px) along the bottom of the component. + static member inline b (value: float) = Interop.mkPlotAttr "b" value + /// The amount of padding (in px) on the left side of the component. + static member inline l (value: int) = Interop.mkPlotAttr "l" value + /// The amount of padding (in px) on the left side of the component. + static member inline l (value: float) = Interop.mkPlotAttr "l" value + + [] + type margin = + /// Sets the left margin (in px). + static member inline l (value: int) = Interop.mkPlotAttr "l" value + /// Sets the left margin (in px). + static member inline l (value: float) = Interop.mkPlotAttr "l" value + /// Sets the right margin (in px). + static member inline r (value: int) = Interop.mkPlotAttr "r" value + /// Sets the right margin (in px). + static member inline r (value: float) = Interop.mkPlotAttr "r" value + /// Sets the top margin (in px). + static member inline t (value: int) = Interop.mkPlotAttr "t" value + /// Sets the top margin (in px). + static member inline t (value: float) = Interop.mkPlotAttr "t" value + /// Sets the bottom margin (in px). + static member inline b (value: int) = Interop.mkPlotAttr "b" value + /// Sets the bottom margin (in px). + static member inline b (value: float) = Interop.mkPlotAttr "b" value + /// Sets the amount of padding (in px) between the plotting area and the axis lines + static member inline pad (value: int) = Interop.mkPlotAttr "pad" value + /// Sets the amount of padding (in px) between the plotting area and the axis lines + static member inline pad (value: float) = Interop.mkPlotAttr "pad" value + /// Turns on/off margin expansion computations. Legends, colorbars, updatemenus, sliders, axis rangeselector and rangeslider are allowed to push the margins by defaults. + static member inline autoexpand (value: bool) = Interop.mkPlotAttr "autoexpand" value + + [] + type modebar = + /// Sets the background color of the modebar. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the color of the icons in the modebar. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the color of the active or hovered on icons in the modebar. + static member inline activecolor (value: string) = Interop.mkPlotAttr "activecolor" value + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + + module modebar = + /// Sets the orientation of the modebar. + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + [] + type transition = + /// The duration of the transition, in milliseconds. If equal to zero, updates are synchronous. + static member inline duration (value: int) = Interop.mkPlotAttr "duration" value + /// The duration of the transition, in milliseconds. If equal to zero, updates are synchronous. + static member inline duration (value: float) = Interop.mkPlotAttr "duration" value + + module transition = + /// The easing function used for the transition + [] + type easing = + static member inline linear = Interop.mkPlotAttr "easing" "linear" + static member inline quad = Interop.mkPlotAttr "easing" "quad" + static member inline cubic = Interop.mkPlotAttr "easing" "cubic" + static member inline sin = Interop.mkPlotAttr "easing" "sin" + static member inline exp = Interop.mkPlotAttr "easing" "exp" + static member inline circle = Interop.mkPlotAttr "easing" "circle" + static member inline elastic = Interop.mkPlotAttr "easing" "elastic" + static member inline back = Interop.mkPlotAttr "easing" "back" + static member inline bounce = Interop.mkPlotAttr "easing" "bounce" + static member inline linearIn = Interop.mkPlotAttr "easing" "linear-in" + static member inline quadIn = Interop.mkPlotAttr "easing" "quad-in" + static member inline cubicIn = Interop.mkPlotAttr "easing" "cubic-in" + static member inline sinIn = Interop.mkPlotAttr "easing" "sin-in" + static member inline expIn = Interop.mkPlotAttr "easing" "exp-in" + static member inline circleIn = Interop.mkPlotAttr "easing" "circle-in" + static member inline elasticIn = Interop.mkPlotAttr "easing" "elastic-in" + static member inline backIn = Interop.mkPlotAttr "easing" "back-in" + static member inline bounceIn = Interop.mkPlotAttr "easing" "bounce-in" + static member inline linearOut = Interop.mkPlotAttr "easing" "linear-out" + static member inline quadOut = Interop.mkPlotAttr "easing" "quad-out" + static member inline cubicOut = Interop.mkPlotAttr "easing" "cubic-out" + static member inline sinOut = Interop.mkPlotAttr "easing" "sin-out" + static member inline expOut = Interop.mkPlotAttr "easing" "exp-out" + static member inline circleOut = Interop.mkPlotAttr "easing" "circle-out" + static member inline elasticOut = Interop.mkPlotAttr "easing" "elastic-out" + static member inline backOut = Interop.mkPlotAttr "easing" "back-out" + static member inline bounceOut = Interop.mkPlotAttr "easing" "bounce-out" + static member inline linearInOut = Interop.mkPlotAttr "easing" "linear-in-out" + static member inline quadInOut = Interop.mkPlotAttr "easing" "quad-in-out" + static member inline cubicInOut = Interop.mkPlotAttr "easing" "cubic-in-out" + static member inline sinInOut = Interop.mkPlotAttr "easing" "sin-in-out" + static member inline expInOut = Interop.mkPlotAttr "easing" "exp-in-out" + static member inline circleInOut = Interop.mkPlotAttr "easing" "circle-in-out" + static member inline elasticInOut = Interop.mkPlotAttr "easing" "elastic-in-out" + static member inline backInOut = Interop.mkPlotAttr "easing" "back-in-out" + static member inline bounceInOut = Interop.mkPlotAttr "easing" "bounce-in-out" + + /// Determines whether the figure's layout or traces smoothly transitions during updates that make both traces and layout change. + [] + type ordering = + static member inline layoutFirst = Interop.mkPlotAttr "ordering" "layout first" + static member inline tracesFirst = Interop.mkPlotAttr "ordering" "traces first" + + [] + type hoverlabel = + /// Sets the background color of all hover labels on graph + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of all hover labels on graph. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis. + static member inline namelength (value: int) = Interop.mkPlotAttr "namelength" value + + module hoverlabel = + /// Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines + [] + type align = + static member inline left = Interop.mkPlotAttr "align" "left" + static member inline right = Interop.mkPlotAttr "align" "right" + static member inline auto = Interop.mkPlotAttr "align" "auto" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type grid = + /// The number of rows in the grid. If you provide a 2D `subplots` array or a `yaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots. + static member inline rows (value: int) = Interop.mkPlotAttr "rows" value + /// The number of columns in the grid. If you provide a 2D `subplots` array, the length of its longest row is used as the default. If you give an `xaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots. + static member inline columns (value: int) = Interop.mkPlotAttr "columns" value + /// Horizontal space between grid cells, expressed as a fraction of the total width available to one cell. Defaults to 0.1 for coupled-axes grids and 0.2 for independent grids. + static member inline xgap (value: int) = Interop.mkPlotAttr "xgap" value + /// Horizontal space between grid cells, expressed as a fraction of the total width available to one cell. Defaults to 0.1 for coupled-axes grids and 0.2 for independent grids. + static member inline xgap (value: float) = Interop.mkPlotAttr "xgap" value + /// Vertical space between grid cells, expressed as a fraction of the total height available to one cell. Defaults to 0.1 for coupled-axes grids and 0.3 for independent grids. + static member inline ygap (value: int) = Interop.mkPlotAttr "ygap" value + /// Vertical space between grid cells, expressed as a fraction of the total height available to one cell. Defaults to 0.1 for coupled-axes grids and 0.3 for independent grids. + static member inline ygap (value: float) = Interop.mkPlotAttr "ygap" value + + module grid = + /// Is the first row the top or the bottom? Note that columns are always enumerated from left to right. + [] + type roworder = + static member inline topToBottom = Interop.mkPlotAttr "roworder" "top to bottom" + static member inline bottomToTop = Interop.mkPlotAttr "roworder" "bottom to top" + + /// If no `subplots`, `xaxes`, or `yaxes` are given but we do have `rows` and `columns`, we can generate defaults using consecutive axis IDs, in two ways: *coupled* gives one x axis per column and one y axis per row. *independent* uses a new xy pair for each cell, left-to-right across each row then iterating rows according to `roworder`. + [] + type pattern = + static member inline independent = Interop.mkPlotAttr "pattern" "independent" + static member inline coupled = Interop.mkPlotAttr "pattern" "coupled" + + /// Sets where the x axis labels and titles go. *bottom* means the very bottom of the grid. *bottom plot* is the lowest plot that each x axis is used in. *top* and *top plot* are similar. + [] + type xside = + static member inline bottom = Interop.mkPlotAttr "xside" "bottom" + static member inline bottomPlot = Interop.mkPlotAttr "xside" "bottom plot" + static member inline topPlot = Interop.mkPlotAttr "xside" "top plot" + static member inline top = Interop.mkPlotAttr "xside" "top" + + /// Sets where the y axis labels and titles go. *left* means the very left edge of the grid. *left plot* is the leftmost plot that each y axis is used in. *right* and *right plot* are similar. + [] + type yside = + static member inline left = Interop.mkPlotAttr "yside" "left" + static member inline leftPlot = Interop.mkPlotAttr "yside" "left plot" + static member inline rightPlot = Interop.mkPlotAttr "yside" "right plot" + static member inline right = Interop.mkPlotAttr "yside" "right" + + [] + type domain = + /// Sets the horizontal domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + + [] + type xaxis = + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Determines whether or not this axis is zoom-able. If true, then zoom is disabled. + static member inline fixedrange (value: bool) = Interop.mkPlotAttr "fixedrange" value + /// If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. + static member inline scaleanchor (value: string) = Interop.mkPlotAttr "scaleanchor" value + /// If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal. + static member inline scaleratio (value: int) = Interop.mkPlotAttr "scaleratio" value + /// If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal. + static member inline scaleratio (value: float) = Interop.mkPlotAttr "scaleratio" value + /// If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`. + static member inline matches (value: string) = Interop.mkPlotAttr "matches" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Determines whether long tick labels automatically grow the figure margins. + static member inline automargin (value: bool) = Interop.mkPlotAttr "automargin" value + /// Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest + static member inline showspikes (value: bool) = Interop.mkPlotAttr "showspikes" value + /// Sets the spike color. If undefined, will use the series color + static member inline spikecolor (value: string) = Interop.mkPlotAttr "spikecolor" value + /// Sets the width (in px) of the zero line. + static member inline spikethickness (value: int) = Interop.mkPlotAttr "spikethickness" value + /// Sets the width (in px) of the zero line. + static member inline spikethickness (value: float) = Interop.mkPlotAttr "spikethickness" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline spikedash (value: string) = Interop.mkPlotAttr "spikedash" value + /// Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on + static member inline spikemode (values: seq) = Interop.mkPlotAttr "spikemode" values + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines. + static member inline zeroline (value: bool) = Interop.mkPlotAttr "zeroline" value + /// Sets the line color of the zero line. + static member inline zerolinecolor (value: string) = Interop.mkPlotAttr "zerolinecolor" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: int) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: float) = Interop.mkPlotAttr "zerolinewidth" value + /// Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes. + static member inline showdividers (value: bool) = Interop.mkPlotAttr "showdividers" value + /// Sets the color of the dividers Only has an effect on *multicategory* axes. + static member inline dividercolor (value: string) = Interop.mkPlotAttr "dividercolor" value + /// Sets the width (in px) of the dividers Only has an effect on *multicategory* axes. + static member inline dividerwidth (value: int) = Interop.mkPlotAttr "dividerwidth" value + /// Sets the width (in px) of the dividers Only has an effect on *multicategory* axes. + static member inline dividerwidth (value: float) = Interop.mkPlotAttr "dividerwidth" value + /// If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`. + static member inline anchor (value: string) = Interop.mkPlotAttr "anchor" value + /// If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible. + static member inline overlaying (value: string) = Interop.mkPlotAttr "overlaying" value + /// Sets the domain of this axis (in plot fraction). + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Sets the domain of this axis (in plot fraction). + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*. + static member inline position (value: int) = Interop.mkPlotAttr "position" value + /// Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*. + static member inline position (value: float) = Interop.mkPlotAttr "position" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + + module xaxis = + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline log = Interop.mkPlotAttr "type" "log" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + static member inline multicategory = Interop.mkPlotAttr "type" "multicategory" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes. + [] + type rangemode = + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + + /// If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range* (default), or by decreasing the *domain*. + [] + type constrain = + static member inline range = Interop.mkPlotAttr "constrain" "range" + static member inline domain = Interop.mkPlotAttr "constrain" "domain" + + /// If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes. + [] + type constraintoward = + static member inline left = Interop.mkPlotAttr "constraintoward" "left" + static member inline center = Interop.mkPlotAttr "constraintoward" "center" + static member inline right = Interop.mkPlotAttr "constraintoward" "right" + static member inline top = Interop.mkPlotAttr "constraintoward" "top" + static member inline middle = Interop.mkPlotAttr "constraintoward" "middle" + static member inline bottom = Interop.mkPlotAttr "constraintoward" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels. + [] + type tickson = + static member inline labels = Interop.mkPlotAttr "tickson" "labels" + static member inline boundaries = Interop.mkPlotAttr "tickson" "boundaries" + + /// Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots. + [] + type mirror = + static member inline true' = Interop.mkPlotAttr "mirror" true + static member inline ticks = Interop.mkPlotAttr "mirror" "ticks" + static member inline false' = Interop.mkPlotAttr "mirror" false + static member inline all = Interop.mkPlotAttr "mirror" "all" + static member inline allticks = Interop.mkPlotAttr "mirror" "allticks" + + /// Determines whether spikelines are stuck to the cursor or to the closest datapoints. + [] + type spikesnap = + static member inline data = Interop.mkPlotAttr "spikesnap" "data" + static member inline cursor = Interop.mkPlotAttr "spikesnap" "cursor" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`. + [] + type anchor = + static member inline free = Interop.mkPlotAttr "anchor" "free" + + /// Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area. + [] + type side = + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + static member inline left = Interop.mkPlotAttr "side" "left" + static member inline right = Interop.mkPlotAttr "side" "right" + + /// If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible. + [] + type overlaying = + static member inline free = Interop.mkPlotAttr "overlaying" "free" + + /// Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis. + [] + type layer = + static member inline aboveTraces = Interop.mkPlotAttr "layer" "above traces" + static member inline belowTraces = Interop.mkPlotAttr "layer" "below traces" + + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + static member inline totalAscending = Interop.mkPlotAttr "categoryorder" "total ascending" + static member inline totalDescending = Interop.mkPlotAttr "categoryorder" "total descending" + static member inline minAscending = Interop.mkPlotAttr "categoryorder" "min ascending" + static member inline minDescending = Interop.mkPlotAttr "categoryorder" "min descending" + static member inline maxAscending = Interop.mkPlotAttr "categoryorder" "max ascending" + static member inline maxDescending = Interop.mkPlotAttr "categoryorder" "max descending" + static member inline sumAscending = Interop.mkPlotAttr "categoryorder" "sum ascending" + static member inline sumDescending = Interop.mkPlotAttr "categoryorder" "sum descending" + static member inline meanAscending = Interop.mkPlotAttr "categoryorder" "mean ascending" + static member inline meanDescending = Interop.mkPlotAttr "categoryorder" "mean descending" + static member inline medianAscending = Interop.mkPlotAttr "categoryorder" "median ascending" + static member inline medianDescending = Interop.mkPlotAttr "categoryorder" "median descending" + + /// Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar` + [] + type calendar = + static member inline gregorian = Interop.mkPlotAttr "calendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "calendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "calendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "calendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "calendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "calendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "calendar" "islamic" + static member inline julian = Interop.mkPlotAttr "calendar" "julian" + static member inline mayan = Interop.mkPlotAttr "calendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "calendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "calendar" "nepali" + static member inline persian = Interop.mkPlotAttr "calendar" "persian" + static member inline jalali = Interop.mkPlotAttr "calendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "calendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "calendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "calendar" "ummalqura" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type rangeslider = + /// Sets the background color of the range slider. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the border color of the range slider. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the border width of the range slider. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Determines whether or not the range slider range is computed in relation to the input data. If `range` is provided, then `autorange` is set to *false*. + static member inline autorange (value: bool) = Interop.mkPlotAttr "autorange" value + /// Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// The height of the range slider as a fraction of the total plot area height. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// The height of the range slider as a fraction of the total plot area height. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Determines whether or not the range slider will be visible. If visible, perpendicular axes will be set to `fixedrange` + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + + module rangeslider = + [] + type yaxis = + /// Sets the range of this axis for the rangeslider. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis for the rangeslider. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis for the rangeslider. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis for the rangeslider. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + + module yaxis = + /// Determines whether or not the range of this axis in the rangeslider use the same value than in the main plot when zooming in/out. If *auto*, the autorange will be used. If *fixed*, the `range` is used. If *match*, the current range of the corresponding y-axis on the main subplot is used. + [] + type rangemode = + static member inline auto = Interop.mkPlotAttr "rangemode" "auto" + static member inline fixed' = Interop.mkPlotAttr "rangemode" "fixed" + static member inline match' = Interop.mkPlotAttr "rangemode" "match" + + [] + type rangeselector = + /// Determines whether or not this range selector is visible. Note that range selectors are only available for x axes of `type` set to or auto-typed to *date*. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets the x position (in normalized coordinates) of the range selector. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position (in normalized coordinates) of the range selector. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the y position (in normalized coordinates) of the range selector. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position (in normalized coordinates) of the range selector. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the background color of the range selector buttons. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the background color of the active range selector button. + static member inline activecolor (value: string) = Interop.mkPlotAttr "activecolor" value + /// Sets the color of the border enclosing the range selector. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) of the border enclosing the range selector. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) of the border enclosing the range selector. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + + module rangeselector = + /// Sets the range selector's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector. + [] + type xanchor = + static member inline auto = Interop.mkPlotAttr "xanchor" "auto" + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets the range selector's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector. + [] + type yanchor = + static member inline auto = Interop.mkPlotAttr "yanchor" "auto" + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type yaxis = + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Determines whether or not this axis is zoom-able. If true, then zoom is disabled. + static member inline fixedrange (value: bool) = Interop.mkPlotAttr "fixedrange" value + /// If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. + static member inline scaleanchor (value: string) = Interop.mkPlotAttr "scaleanchor" value + /// If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal. + static member inline scaleratio (value: int) = Interop.mkPlotAttr "scaleratio" value + /// If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal. + static member inline scaleratio (value: float) = Interop.mkPlotAttr "scaleratio" value + /// If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`. + static member inline matches (value: string) = Interop.mkPlotAttr "matches" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Determines whether long tick labels automatically grow the figure margins. + static member inline automargin (value: bool) = Interop.mkPlotAttr "automargin" value + /// Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest + static member inline showspikes (value: bool) = Interop.mkPlotAttr "showspikes" value + /// Sets the spike color. If undefined, will use the series color + static member inline spikecolor (value: string) = Interop.mkPlotAttr "spikecolor" value + /// Sets the width (in px) of the zero line. + static member inline spikethickness (value: int) = Interop.mkPlotAttr "spikethickness" value + /// Sets the width (in px) of the zero line. + static member inline spikethickness (value: float) = Interop.mkPlotAttr "spikethickness" value + /// Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). + static member inline spikedash (value: string) = Interop.mkPlotAttr "spikedash" value + /// Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on + static member inline spikemode (values: seq) = Interop.mkPlotAttr "spikemode" values + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines. + static member inline zeroline (value: bool) = Interop.mkPlotAttr "zeroline" value + /// Sets the line color of the zero line. + static member inline zerolinecolor (value: string) = Interop.mkPlotAttr "zerolinecolor" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: int) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: float) = Interop.mkPlotAttr "zerolinewidth" value + /// Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes. + static member inline showdividers (value: bool) = Interop.mkPlotAttr "showdividers" value + /// Sets the color of the dividers Only has an effect on *multicategory* axes. + static member inline dividercolor (value: string) = Interop.mkPlotAttr "dividercolor" value + /// Sets the width (in px) of the dividers Only has an effect on *multicategory* axes. + static member inline dividerwidth (value: int) = Interop.mkPlotAttr "dividerwidth" value + /// Sets the width (in px) of the dividers Only has an effect on *multicategory* axes. + static member inline dividerwidth (value: float) = Interop.mkPlotAttr "dividerwidth" value + /// If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`. + static member inline anchor (value: string) = Interop.mkPlotAttr "anchor" value + /// If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible. + static member inline overlaying (value: string) = Interop.mkPlotAttr "overlaying" value + /// Sets the domain of this axis (in plot fraction). + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Sets the domain of this axis (in plot fraction). + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*. + static member inline position (value: int) = Interop.mkPlotAttr "position" value + /// Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*. + static member inline position (value: float) = Interop.mkPlotAttr "position" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + + module yaxis = + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline log = Interop.mkPlotAttr "type" "log" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + static member inline multicategory = Interop.mkPlotAttr "type" "multicategory" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes. + [] + type rangemode = + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + + /// If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range* (default), or by decreasing the *domain*. + [] + type constrain = + static member inline range = Interop.mkPlotAttr "constrain" "range" + static member inline domain = Interop.mkPlotAttr "constrain" "domain" + + /// If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes. + [] + type constraintoward = + static member inline left = Interop.mkPlotAttr "constraintoward" "left" + static member inline center = Interop.mkPlotAttr "constraintoward" "center" + static member inline right = Interop.mkPlotAttr "constraintoward" "right" + static member inline top = Interop.mkPlotAttr "constraintoward" "top" + static member inline middle = Interop.mkPlotAttr "constraintoward" "middle" + static member inline bottom = Interop.mkPlotAttr "constraintoward" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels. + [] + type tickson = + static member inline labels = Interop.mkPlotAttr "tickson" "labels" + static member inline boundaries = Interop.mkPlotAttr "tickson" "boundaries" + + /// Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots. + [] + type mirror = + static member inline true' = Interop.mkPlotAttr "mirror" true + static member inline ticks = Interop.mkPlotAttr "mirror" "ticks" + static member inline false' = Interop.mkPlotAttr "mirror" false + static member inline all = Interop.mkPlotAttr "mirror" "all" + static member inline allticks = Interop.mkPlotAttr "mirror" "allticks" + + /// Determines whether spikelines are stuck to the cursor or to the closest datapoints. + [] + type spikesnap = + static member inline data = Interop.mkPlotAttr "spikesnap" "data" + static member inline cursor = Interop.mkPlotAttr "spikesnap" "cursor" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`. + [] + type anchor = + static member inline free = Interop.mkPlotAttr "anchor" "free" + + /// Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area. + [] + type side = + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + static member inline left = Interop.mkPlotAttr "side" "left" + static member inline right = Interop.mkPlotAttr "side" "right" + + /// If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible. + [] + type overlaying = + static member inline free = Interop.mkPlotAttr "overlaying" "free" + + /// Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis. + [] + type layer = + static member inline aboveTraces = Interop.mkPlotAttr "layer" "above traces" + static member inline belowTraces = Interop.mkPlotAttr "layer" "below traces" + + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + static member inline totalAscending = Interop.mkPlotAttr "categoryorder" "total ascending" + static member inline totalDescending = Interop.mkPlotAttr "categoryorder" "total descending" + static member inline minAscending = Interop.mkPlotAttr "categoryorder" "min ascending" + static member inline minDescending = Interop.mkPlotAttr "categoryorder" "min descending" + static member inline maxAscending = Interop.mkPlotAttr "categoryorder" "max ascending" + static member inline maxDescending = Interop.mkPlotAttr "categoryorder" "max descending" + static member inline sumAscending = Interop.mkPlotAttr "categoryorder" "sum ascending" + static member inline sumDescending = Interop.mkPlotAttr "categoryorder" "sum descending" + static member inline meanAscending = Interop.mkPlotAttr "categoryorder" "mean ascending" + static member inline meanDescending = Interop.mkPlotAttr "categoryorder" "mean descending" + static member inline medianAscending = Interop.mkPlotAttr "categoryorder" "median ascending" + static member inline medianDescending = Interop.mkPlotAttr "categoryorder" "median descending" + + /// Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar` + [] + type calendar = + static member inline gregorian = Interop.mkPlotAttr "calendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "calendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "calendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "calendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "calendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "calendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "calendar" "islamic" + static member inline julian = Interop.mkPlotAttr "calendar" "julian" + static member inline mayan = Interop.mkPlotAttr "calendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "calendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "calendar" "nepali" + static member inline persian = Interop.mkPlotAttr "calendar" "persian" + static member inline jalali = Interop.mkPlotAttr "calendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "calendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "calendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "calendar" "ummalqura" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type ternary = + /// Set the background color of the subplot + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// The number each triplet should sum to, and the maximum range of each axis + static member inline sum (value: int) = Interop.mkPlotAttr "sum" value + /// The number each triplet should sum to, and the maximum range of each axis + static member inline sum (value: float) = Interop.mkPlotAttr "sum" value + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + + module ternary = + [] + type domain = + /// Sets the horizontal domain of this ternary subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this ternary subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this ternary subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this ternary subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this ternary subplot . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this ternary subplot . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type aaxis = + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero. + static member inline min (value: int) = Interop.mkPlotAttr "min" value + /// The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero. + static member inline min (value: float) = Interop.mkPlotAttr "min" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module aaxis = + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis. + [] + type layer = + static member inline aboveTraces = Interop.mkPlotAttr "layer" "above traces" + static member inline belowTraces = Interop.mkPlotAttr "layer" "below traces" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type baxis = + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero. + static member inline min (value: int) = Interop.mkPlotAttr "min" value + /// The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero. + static member inline min (value: float) = Interop.mkPlotAttr "min" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module baxis = + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis. + [] + type layer = + static member inline aboveTraces = Interop.mkPlotAttr "layer" "above traces" + static member inline belowTraces = Interop.mkPlotAttr "layer" "below traces" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type caxis = + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero. + static member inline min (value: int) = Interop.mkPlotAttr "min" value + /// The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero. + static member inline min (value: float) = Interop.mkPlotAttr "min" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module caxis = + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis. + [] + type layer = + static member inline aboveTraces = Interop.mkPlotAttr "layer" "above traces" + static member inline belowTraces = Interop.mkPlotAttr "layer" "below traces" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type scene = + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + + module scene = + /// If *cube*, this scene's axes are drawn as a cube, regardless of the axes' ranges. If *data*, this scene's axes are drawn in proportion with the axes' ranges. If *manual*, this scene's axes are drawn in proportion with the input of *aspectratio* (the default behavior if *aspectratio* is provided). If *auto*, this scene's axes are drawn using the results of *data* except when one axis is more than four times the size of the two others, where in that case the results of *cube* are used. + [] + type aspectmode = + static member inline auto = Interop.mkPlotAttr "aspectmode" "auto" + static member inline cube = Interop.mkPlotAttr "aspectmode" "cube" + static member inline data = Interop.mkPlotAttr "aspectmode" "data" + static member inline manual = Interop.mkPlotAttr "aspectmode" "manual" + + /// Determines the mode of drag interactions for this scene. + [] + type dragmode = + static member inline orbit = Interop.mkPlotAttr "dragmode" "orbit" + static member inline turntable = Interop.mkPlotAttr "dragmode" "turntable" + static member inline zoom = Interop.mkPlotAttr "dragmode" "zoom" + static member inline pan = Interop.mkPlotAttr "dragmode" "pan" + static member inline false' = Interop.mkPlotAttr "dragmode" false + + /// Determines the mode of hover interactions for this scene. + [] + type hovermode = + static member inline closest = Interop.mkPlotAttr "hovermode" "closest" + static member inline false' = Interop.mkPlotAttr "hovermode" false + + module camera = + [] + type up = + static member inline x (value: int) = Interop.mkPlotAttr "x" value + static member inline x (value: float) = Interop.mkPlotAttr "x" value + static member inline y (value: int) = Interop.mkPlotAttr "y" value + static member inline y (value: float) = Interop.mkPlotAttr "y" value + static member inline z (value: int) = Interop.mkPlotAttr "z" value + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type center = + static member inline x (value: int) = Interop.mkPlotAttr "x" value + static member inline x (value: float) = Interop.mkPlotAttr "x" value + static member inline y (value: int) = Interop.mkPlotAttr "y" value + static member inline y (value: float) = Interop.mkPlotAttr "y" value + static member inline z (value: int) = Interop.mkPlotAttr "z" value + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type eye = + static member inline x (value: int) = Interop.mkPlotAttr "x" value + static member inline x (value: float) = Interop.mkPlotAttr "x" value + static member inline y (value: int) = Interop.mkPlotAttr "y" value + static member inline y (value: float) = Interop.mkPlotAttr "y" value + static member inline z (value: int) = Interop.mkPlotAttr "z" value + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + module projection = + /// Sets the projection type. The projection type could be either *perspective* or *orthographic*. The default is *perspective*. + [] + type type' = + static member inline perspective = Interop.mkPlotAttr "type" "perspective" + static member inline orthographic = Interop.mkPlotAttr "type" "orthographic" + + [] + type domain = + /// Sets the horizontal domain of this scene subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this scene subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this scene subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this scene subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this scene subplot . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this scene subplot . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type aspectratio = + static member inline x (value: int) = Interop.mkPlotAttr "x" value + static member inline x (value: float) = Interop.mkPlotAttr "x" value + static member inline y (value: int) = Interop.mkPlotAttr "y" value + static member inline y (value: float) = Interop.mkPlotAttr "y" value + static member inline z (value: int) = Interop.mkPlotAttr "z" value + static member inline z (value: float) = Interop.mkPlotAttr "z" value + + [] + type xaxis = + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets whether or not spikes starting from data points to this axis' wall are shown on hover. + static member inline showspikes (value: bool) = Interop.mkPlotAttr "showspikes" value + /// Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover. + static member inline spikesides (value: bool) = Interop.mkPlotAttr "spikesides" value + /// Sets the thickness (in px) of the spikes. + static member inline spikethickness (value: int) = Interop.mkPlotAttr "spikethickness" value + /// Sets the thickness (in px) of the spikes. + static member inline spikethickness (value: float) = Interop.mkPlotAttr "spikethickness" value + /// Sets the color of the spikes. + static member inline spikecolor (value: string) = Interop.mkPlotAttr "spikecolor" value + /// Sets whether or not this axis' wall has a background color. + static member inline showbackground (value: bool) = Interop.mkPlotAttr "showbackground" value + /// Sets the background color of this axis' wall. + static member inline backgroundcolor (value: string) = Interop.mkPlotAttr "backgroundcolor" value + /// Sets whether or not this axis is labeled + static member inline showaxeslabels (value: bool) = Interop.mkPlotAttr "showaxeslabels" value + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines. + static member inline zeroline (value: bool) = Interop.mkPlotAttr "zeroline" value + /// Sets the line color of the zero line. + static member inline zerolinecolor (value: string) = Interop.mkPlotAttr "zerolinecolor" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: int) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: float) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module xaxis = + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + static member inline totalAscending = Interop.mkPlotAttr "categoryorder" "total ascending" + static member inline totalDescending = Interop.mkPlotAttr "categoryorder" "total descending" + static member inline minAscending = Interop.mkPlotAttr "categoryorder" "min ascending" + static member inline minDescending = Interop.mkPlotAttr "categoryorder" "min descending" + static member inline maxAscending = Interop.mkPlotAttr "categoryorder" "max ascending" + static member inline maxDescending = Interop.mkPlotAttr "categoryorder" "max descending" + static member inline sumAscending = Interop.mkPlotAttr "categoryorder" "sum ascending" + static member inline sumDescending = Interop.mkPlotAttr "categoryorder" "sum descending" + static member inline meanAscending = Interop.mkPlotAttr "categoryorder" "mean ascending" + static member inline meanDescending = Interop.mkPlotAttr "categoryorder" "mean descending" + static member inline medianAscending = Interop.mkPlotAttr "categoryorder" "median ascending" + static member inline medianDescending = Interop.mkPlotAttr "categoryorder" "median descending" + + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline log = Interop.mkPlotAttr "type" "log" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes. + [] + type rangemode = + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots. + [] + type mirror = + static member inline true' = Interop.mkPlotAttr "mirror" true + static member inline ticks = Interop.mkPlotAttr "mirror" "ticks" + static member inline false' = Interop.mkPlotAttr "mirror" false + static member inline all = Interop.mkPlotAttr "mirror" "all" + static member inline allticks = Interop.mkPlotAttr "mirror" "allticks" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar` + [] + type calendar = + static member inline gregorian = Interop.mkPlotAttr "calendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "calendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "calendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "calendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "calendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "calendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "calendar" "islamic" + static member inline julian = Interop.mkPlotAttr "calendar" "julian" + static member inline mayan = Interop.mkPlotAttr "calendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "calendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "calendar" "nepali" + static member inline persian = Interop.mkPlotAttr "calendar" "persian" + static member inline jalali = Interop.mkPlotAttr "calendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "calendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "calendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "calendar" "ummalqura" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type yaxis = + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets whether or not spikes starting from data points to this axis' wall are shown on hover. + static member inline showspikes (value: bool) = Interop.mkPlotAttr "showspikes" value + /// Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover. + static member inline spikesides (value: bool) = Interop.mkPlotAttr "spikesides" value + /// Sets the thickness (in px) of the spikes. + static member inline spikethickness (value: int) = Interop.mkPlotAttr "spikethickness" value + /// Sets the thickness (in px) of the spikes. + static member inline spikethickness (value: float) = Interop.mkPlotAttr "spikethickness" value + /// Sets the color of the spikes. + static member inline spikecolor (value: string) = Interop.mkPlotAttr "spikecolor" value + /// Sets whether or not this axis' wall has a background color. + static member inline showbackground (value: bool) = Interop.mkPlotAttr "showbackground" value + /// Sets the background color of this axis' wall. + static member inline backgroundcolor (value: string) = Interop.mkPlotAttr "backgroundcolor" value + /// Sets whether or not this axis is labeled + static member inline showaxeslabels (value: bool) = Interop.mkPlotAttr "showaxeslabels" value + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines. + static member inline zeroline (value: bool) = Interop.mkPlotAttr "zeroline" value + /// Sets the line color of the zero line. + static member inline zerolinecolor (value: string) = Interop.mkPlotAttr "zerolinecolor" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: int) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: float) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module yaxis = + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + static member inline totalAscending = Interop.mkPlotAttr "categoryorder" "total ascending" + static member inline totalDescending = Interop.mkPlotAttr "categoryorder" "total descending" + static member inline minAscending = Interop.mkPlotAttr "categoryorder" "min ascending" + static member inline minDescending = Interop.mkPlotAttr "categoryorder" "min descending" + static member inline maxAscending = Interop.mkPlotAttr "categoryorder" "max ascending" + static member inline maxDescending = Interop.mkPlotAttr "categoryorder" "max descending" + static member inline sumAscending = Interop.mkPlotAttr "categoryorder" "sum ascending" + static member inline sumDescending = Interop.mkPlotAttr "categoryorder" "sum descending" + static member inline meanAscending = Interop.mkPlotAttr "categoryorder" "mean ascending" + static member inline meanDescending = Interop.mkPlotAttr "categoryorder" "mean descending" + static member inline medianAscending = Interop.mkPlotAttr "categoryorder" "median ascending" + static member inline medianDescending = Interop.mkPlotAttr "categoryorder" "median descending" + + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline log = Interop.mkPlotAttr "type" "log" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes. + [] + type rangemode = + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots. + [] + type mirror = + static member inline true' = Interop.mkPlotAttr "mirror" true + static member inline ticks = Interop.mkPlotAttr "mirror" "ticks" + static member inline false' = Interop.mkPlotAttr "mirror" false + static member inline all = Interop.mkPlotAttr "mirror" "all" + static member inline allticks = Interop.mkPlotAttr "mirror" "allticks" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar` + [] + type calendar = + static member inline gregorian = Interop.mkPlotAttr "calendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "calendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "calendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "calendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "calendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "calendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "calendar" "islamic" + static member inline julian = Interop.mkPlotAttr "calendar" "julian" + static member inline mayan = Interop.mkPlotAttr "calendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "calendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "calendar" "nepali" + static member inline persian = Interop.mkPlotAttr "calendar" "persian" + static member inline jalali = Interop.mkPlotAttr "calendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "calendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "calendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "calendar" "ummalqura" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type zaxis = + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets whether or not spikes starting from data points to this axis' wall are shown on hover. + static member inline showspikes (value: bool) = Interop.mkPlotAttr "showspikes" value + /// Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover. + static member inline spikesides (value: bool) = Interop.mkPlotAttr "spikesides" value + /// Sets the thickness (in px) of the spikes. + static member inline spikethickness (value: int) = Interop.mkPlotAttr "spikethickness" value + /// Sets the thickness (in px) of the spikes. + static member inline spikethickness (value: float) = Interop.mkPlotAttr "spikethickness" value + /// Sets the color of the spikes. + static member inline spikecolor (value: string) = Interop.mkPlotAttr "spikecolor" value + /// Sets whether or not this axis' wall has a background color. + static member inline showbackground (value: bool) = Interop.mkPlotAttr "showbackground" value + /// Sets the background color of this axis' wall. + static member inline backgroundcolor (value: string) = Interop.mkPlotAttr "backgroundcolor" value + /// Sets whether or not this axis is labeled + static member inline showaxeslabels (value: bool) = Interop.mkPlotAttr "showaxeslabels" value + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines. + static member inline zeroline (value: bool) = Interop.mkPlotAttr "zeroline" value + /// Sets the line color of the zero line. + static member inline zerolinecolor (value: string) = Interop.mkPlotAttr "zerolinecolor" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: int) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the width (in px) of the zero line. + static member inline zerolinewidth (value: float) = Interop.mkPlotAttr "zerolinewidth" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module zaxis = + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + static member inline totalAscending = Interop.mkPlotAttr "categoryorder" "total ascending" + static member inline totalDescending = Interop.mkPlotAttr "categoryorder" "total descending" + static member inline minAscending = Interop.mkPlotAttr "categoryorder" "min ascending" + static member inline minDescending = Interop.mkPlotAttr "categoryorder" "min descending" + static member inline maxAscending = Interop.mkPlotAttr "categoryorder" "max ascending" + static member inline maxDescending = Interop.mkPlotAttr "categoryorder" "max descending" + static member inline sumAscending = Interop.mkPlotAttr "categoryorder" "sum ascending" + static member inline sumDescending = Interop.mkPlotAttr "categoryorder" "sum descending" + static member inline meanAscending = Interop.mkPlotAttr "categoryorder" "mean ascending" + static member inline meanDescending = Interop.mkPlotAttr "categoryorder" "mean descending" + static member inline medianAscending = Interop.mkPlotAttr "categoryorder" "median ascending" + static member inline medianDescending = Interop.mkPlotAttr "categoryorder" "median descending" + + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline log = Interop.mkPlotAttr "type" "log" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes. + [] + type rangemode = + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots. + [] + type mirror = + static member inline true' = Interop.mkPlotAttr "mirror" true + static member inline ticks = Interop.mkPlotAttr "mirror" "ticks" + static member inline false' = Interop.mkPlotAttr "mirror" false + static member inline all = Interop.mkPlotAttr "mirror" "all" + static member inline allticks = Interop.mkPlotAttr "mirror" "allticks" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar` + [] + type calendar = + static member inline gregorian = Interop.mkPlotAttr "calendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "calendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "calendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "calendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "calendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "calendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "calendar" "islamic" + static member inline julian = Interop.mkPlotAttr "calendar" "julian" + static member inline mayan = Interop.mkPlotAttr "calendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "calendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "calendar" "nepali" + static member inline persian = Interop.mkPlotAttr "calendar" "persian" + static member inline jalali = Interop.mkPlotAttr "calendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "calendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "calendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "calendar" "ummalqura" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type geo = + /// Sets whether or not the coastlines are drawn. + static member inline showcoastlines (value: bool) = Interop.mkPlotAttr "showcoastlines" value + /// Sets the coastline color. + static member inline coastlinecolor (value: string) = Interop.mkPlotAttr "coastlinecolor" value + /// Sets the coastline stroke width (in px). + static member inline coastlinewidth (value: int) = Interop.mkPlotAttr "coastlinewidth" value + /// Sets the coastline stroke width (in px). + static member inline coastlinewidth (value: float) = Interop.mkPlotAttr "coastlinewidth" value + /// Sets whether or not land masses are filled in color. + static member inline showland (value: bool) = Interop.mkPlotAttr "showland" value + /// Sets the land mass color. + static member inline landcolor (value: string) = Interop.mkPlotAttr "landcolor" value + /// Sets whether or not oceans are filled in color. + static member inline showocean (value: bool) = Interop.mkPlotAttr "showocean" value + /// Sets the ocean color + static member inline oceancolor (value: string) = Interop.mkPlotAttr "oceancolor" value + /// Sets whether or not lakes are drawn. + static member inline showlakes (value: bool) = Interop.mkPlotAttr "showlakes" value + /// Sets the color of the lakes. + static member inline lakecolor (value: string) = Interop.mkPlotAttr "lakecolor" value + /// Sets whether or not rivers are drawn. + static member inline showrivers (value: bool) = Interop.mkPlotAttr "showrivers" value + /// Sets color of the rivers. + static member inline rivercolor (value: string) = Interop.mkPlotAttr "rivercolor" value + /// Sets the stroke width (in px) of the rivers. + static member inline riverwidth (value: int) = Interop.mkPlotAttr "riverwidth" value + /// Sets the stroke width (in px) of the rivers. + static member inline riverwidth (value: float) = Interop.mkPlotAttr "riverwidth" value + /// Sets whether or not country boundaries are drawn. + static member inline showcountries (value: bool) = Interop.mkPlotAttr "showcountries" value + /// Sets line color of the country boundaries. + static member inline countrycolor (value: string) = Interop.mkPlotAttr "countrycolor" value + /// Sets line width (in px) of the country boundaries. + static member inline countrywidth (value: int) = Interop.mkPlotAttr "countrywidth" value + /// Sets line width (in px) of the country boundaries. + static member inline countrywidth (value: float) = Interop.mkPlotAttr "countrywidth" value + /// Sets whether or not boundaries of subunits within countries (e.g. states, provinces) are drawn. + static member inline showsubunits (value: bool) = Interop.mkPlotAttr "showsubunits" value + /// Sets the color of the subunits boundaries. + static member inline subunitcolor (value: string) = Interop.mkPlotAttr "subunitcolor" value + /// Sets the stroke width (in px) of the subunits boundaries. + static member inline subunitwidth (value: int) = Interop.mkPlotAttr "subunitwidth" value + /// Sets the stroke width (in px) of the subunits boundaries. + static member inline subunitwidth (value: float) = Interop.mkPlotAttr "subunitwidth" value + /// Sets whether or not a frame is drawn around the map. + static member inline showframe (value: bool) = Interop.mkPlotAttr "showframe" value + /// Sets the color the frame. + static member inline framecolor (value: string) = Interop.mkPlotAttr "framecolor" value + /// Sets the stroke width (in px) of the frame. + static member inline framewidth (value: int) = Interop.mkPlotAttr "framewidth" value + /// Sets the stroke width (in px) of the frame. + static member inline framewidth (value: float) = Interop.mkPlotAttr "framewidth" value + /// Set the background color of the map + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + + module geo = + /// Sets the resolution of the base layers. The values have units of km/mm e.g. 110 corresponds to a scale ratio of 1:110,000,000. + [] + type resolution = + static member inline _110 = Interop.mkPlotAttr "resolution" 110 + static member inline _50 = Interop.mkPlotAttr "resolution" 50 + + /// Set the scope of the map. + [] + type scope = + static member inline world = Interop.mkPlotAttr "scope" "world" + static member inline usa = Interop.mkPlotAttr "scope" "usa" + static member inline europe = Interop.mkPlotAttr "scope" "europe" + static member inline asia = Interop.mkPlotAttr "scope" "asia" + static member inline africa = Interop.mkPlotAttr "scope" "africa" + static member inline northAmerica = Interop.mkPlotAttr "scope" "north america" + static member inline southAmerica = Interop.mkPlotAttr "scope" "south america" + + [] + type domain = + /// Sets the horizontal domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type projection = + /// For conic projection types only. Sets the parallels (tangent, secant) where the cone intersects the sphere. + static member inline parallels (values: seq) = Interop.mkPlotAttr "parallels" values + /// For conic projection types only. Sets the parallels (tangent, secant) where the cone intersects the sphere. + static member inline parallels (values: seq) = Interop.mkPlotAttr "parallels" values + /// Zooms in or out on the map view. A scale of *1* corresponds to the largest zoom level that fits the map's lon and lat ranges. + static member inline scale (value: int) = Interop.mkPlotAttr "scale" value + /// Zooms in or out on the map view. A scale of *1* corresponds to the largest zoom level that fits the map's lon and lat ranges. + static member inline scale (value: float) = Interop.mkPlotAttr "scale" value + + module projection = + /// Sets the projection type. + [] + type type' = + static member inline equirectangular = Interop.mkPlotAttr "type" "equirectangular" + static member inline mercator = Interop.mkPlotAttr "type" "mercator" + static member inline orthographic = Interop.mkPlotAttr "type" "orthographic" + static member inline naturalEarth = Interop.mkPlotAttr "type" "natural earth" + static member inline kavrayskiy7 = Interop.mkPlotAttr "type" "kavrayskiy7" + static member inline miller = Interop.mkPlotAttr "type" "miller" + static member inline robinson = Interop.mkPlotAttr "type" "robinson" + static member inline eckert4 = Interop.mkPlotAttr "type" "eckert4" + static member inline azimuthalEqualArea = Interop.mkPlotAttr "type" "azimuthal equal area" + static member inline azimuthalEquidistant = Interop.mkPlotAttr "type" "azimuthal equidistant" + static member inline conicEqualArea = Interop.mkPlotAttr "type" "conic equal area" + static member inline conicConformal = Interop.mkPlotAttr "type" "conic conformal" + static member inline conicEquidistant = Interop.mkPlotAttr "type" "conic equidistant" + static member inline gnomonic = Interop.mkPlotAttr "type" "gnomonic" + static member inline stereographic = Interop.mkPlotAttr "type" "stereographic" + static member inline mollweide = Interop.mkPlotAttr "type" "mollweide" + static member inline hammer = Interop.mkPlotAttr "type" "hammer" + static member inline transverseMercator = Interop.mkPlotAttr "type" "transverse mercator" + static member inline albersUsa = Interop.mkPlotAttr "type" "albers usa" + static member inline winkelTripel = Interop.mkPlotAttr "type" "winkel tripel" + static member inline aitoff = Interop.mkPlotAttr "type" "aitoff" + static member inline sinusoidal = Interop.mkPlotAttr "type" "sinusoidal" + + [] + type rotation = + /// Rotates the map along parallels (in degrees East). Defaults to the center of the `lonaxis.range` values. + static member inline lon (value: int) = Interop.mkPlotAttr "lon" value + /// Rotates the map along parallels (in degrees East). Defaults to the center of the `lonaxis.range` values. + static member inline lon (value: float) = Interop.mkPlotAttr "lon" value + /// Rotates the map along meridians (in degrees North). + static member inline lat (value: int) = Interop.mkPlotAttr "lat" value + /// Rotates the map along meridians (in degrees North). + static member inline lat (value: float) = Interop.mkPlotAttr "lat" value + /// Roll the map (in degrees) For example, a roll of *180* makes the map appear upside down. + static member inline roll (value: int) = Interop.mkPlotAttr "roll" value + /// Roll the map (in degrees) For example, a roll of *180* makes the map appear upside down. + static member inline roll (value: float) = Interop.mkPlotAttr "roll" value + + [] + type center = + /// Sets the longitude of the map's center. By default, the map's longitude center lies at the middle of the longitude range for scoped projection and above `projection.rotation.lon` otherwise. + static member inline lon (value: int) = Interop.mkPlotAttr "lon" value + /// Sets the longitude of the map's center. By default, the map's longitude center lies at the middle of the longitude range for scoped projection and above `projection.rotation.lon` otherwise. + static member inline lon (value: float) = Interop.mkPlotAttr "lon" value + /// Sets the latitude of the map's center. For all projection types, the map's latitude center lies at the middle of the latitude range by default. + static member inline lat (value: int) = Interop.mkPlotAttr "lat" value + /// Sets the latitude of the map's center. For all projection types, the map's latitude center lies at the middle of the latitude range by default. + static member inline lat (value: float) = Interop.mkPlotAttr "lat" value + + [] + type lonaxis = + /// Sets the range of this axis (in degrees), sets the map's clipped coordinates. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis (in degrees), sets the map's clipped coordinates. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets whether or not graticule are shown on the map. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the graticule's starting tick longitude/latitude. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the graticule's starting tick longitude/latitude. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the graticule's longitude/latitude tick step. + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the graticule's longitude/latitude tick step. + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the graticule's stroke color. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the graticule's stroke width (in px). + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the graticule's stroke width (in px). + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + + [] + type lataxis = + /// Sets the range of this axis (in degrees), sets the map's clipped coordinates. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis (in degrees), sets the map's clipped coordinates. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets whether or not graticule are shown on the map. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the graticule's starting tick longitude/latitude. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the graticule's starting tick longitude/latitude. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the graticule's longitude/latitude tick step. + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the graticule's longitude/latitude tick step. + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the graticule's stroke color. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the graticule's stroke width (in px). + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the graticule's stroke width (in px). + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + + [] + type mapbox = + /// Sets the mapbox access token to be used for this mapbox map. Alternatively, the mapbox access token can be set in the configuration options under `mapboxAccessToken`. Note that accessToken are only required when `style` (e.g with values : basic, streets, outdoors, light, dark, satellite, satellite-streets ) and/or a layout layer references the Mapbox server. + static member inline accesstoken (value: string) = Interop.mkPlotAttr "accesstoken" value + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (value: bool) = Interop.mkPlotAttr "style" value + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (values: seq) = Interop.mkPlotAttr "style" values + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (value: string) = Interop.mkPlotAttr "style" value + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (values: seq) = Interop.mkPlotAttr "style" values + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (value: int) = Interop.mkPlotAttr "style" value + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (values: seq) = Interop.mkPlotAttr "style" values + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (value: float) = Interop.mkPlotAttr "style" value + /// Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox-- + static member inline style (values: seq) = Interop.mkPlotAttr "style" values + /// Sets the zoom level of the map (mapbox.zoom). + static member inline zoom (value: int) = Interop.mkPlotAttr "zoom" value + /// Sets the zoom level of the map (mapbox.zoom). + static member inline zoom (value: float) = Interop.mkPlotAttr "zoom" value + /// Sets the bearing angle of the map in degrees counter-clockwise from North (mapbox.bearing). + static member inline bearing (value: int) = Interop.mkPlotAttr "bearing" value + /// Sets the bearing angle of the map in degrees counter-clockwise from North (mapbox.bearing). + static member inline bearing (value: float) = Interop.mkPlotAttr "bearing" value + /// Sets the pitch angle of the map (in degrees, where *0* means perpendicular to the surface of the map) (mapbox.pitch). + static member inline pitch (value: int) = Interop.mkPlotAttr "pitch" value + /// Sets the pitch angle of the map (in degrees, where *0* means perpendicular to the surface of the map) (mapbox.pitch). + static member inline pitch (value: float) = Interop.mkPlotAttr "pitch" value + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + + module mapbox = + [] + type domain = + /// Sets the horizontal domain of this mapbox subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this mapbox subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this mapbox subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this mapbox subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this mapbox subplot . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this mapbox subplot . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type center = + /// Sets the longitude of the center of the map (in degrees East). + static member inline lon (value: int) = Interop.mkPlotAttr "lon" value + /// Sets the longitude of the center of the map (in degrees East). + static member inline lon (value: float) = Interop.mkPlotAttr "lon" value + /// Sets the latitude of the center of the map (in degrees North). + static member inline lat (value: int) = Interop.mkPlotAttr "lat" value + /// Sets the latitude of the center of the map (in degrees North). + static member inline lat (value: float) = Interop.mkPlotAttr "lat" value + + [] + type polar = + /// Sets angular span of this polar subplot with two angles (in degrees). Sector are assumed to be spanned in the counterclockwise direction with *0* corresponding to rightmost limit of the polar subplot. + static member inline sector (values: seq) = Interop.mkPlotAttr "sector" values + /// Sets angular span of this polar subplot with two angles (in degrees). Sector are assumed to be spanned in the counterclockwise direction with *0* corresponding to rightmost limit of the polar subplot. + static member inline sector (values: seq) = Interop.mkPlotAttr "sector" values + /// Sets the fraction of the radius to cut out of the polar subplot. + static member inline hole (value: int) = Interop.mkPlotAttr "hole" value + /// Sets the fraction of the radius to cut out of the polar subplot. + static member inline hole (value: float) = Interop.mkPlotAttr "hole" value + /// Set the background color of the subplot + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + + module polar = + /// Determines if the radial axis grid lines and angular axis line are drawn as *circular* sectors or as *linear* (polygon) sectors. Has an effect only when the angular axis has `type` *category*. Note that `radialaxis.angle` is snapped to the angle of the closest vertex when `gridshape` is *circular* (so that radial axis scale is the same as the data scale). + [] + type gridshape = + static member inline circular = Interop.mkPlotAttr "gridshape" "circular" + static member inline linear = Interop.mkPlotAttr "gridshape" "linear" + + [] + type domain = + /// Sets the horizontal domain of this polar subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the horizontal domain of this polar subplot (in plot fraction). + static member inline x (values: seq) = Interop.mkPlotAttr "x" values + /// Sets the vertical domain of this polar subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// Sets the vertical domain of this polar subplot (in plot fraction). + static member inline y (values: seq) = Interop.mkPlotAttr "y" values + /// If there is a layout grid, use the domain for this row in the grid for this polar subplot . + static member inline row (value: int) = Interop.mkPlotAttr "row" value + /// If there is a layout grid, use the domain for this column in the grid for this polar subplot . + static member inline column (value: int) = Interop.mkPlotAttr "column" value + + [] + type radialaxis = + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the angle (in degrees) from which the radial axis is drawn. Note that by default, radial axis line on the theta=0 line corresponds to a line pointing right (like what mathematicians prefer). Defaults to the first `polar.sector` angle. + static member inline angle (value: int) = Interop.mkPlotAttr "angle" value + /// Sets the angle (in degrees) from which the radial axis is drawn. Note that by default, radial axis line on the theta=0 line corresponds to a line pointing right (like what mathematicians prefer). Defaults to the first `polar.sector` angle. + static member inline angle (value: float) = Interop.mkPlotAttr "angle" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module radialaxis = + /// Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline log = Interop.mkPlotAttr "type" "log" + static member inline date = Interop.mkPlotAttr "type" "date" + static member inline category = Interop.mkPlotAttr "type" "category" + + /// Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*. + [] + type autorange = + static member inline true' = Interop.mkPlotAttr "autorange" true + static member inline false' = Interop.mkPlotAttr "autorange" false + static member inline reversed = Interop.mkPlotAttr "autorange" "reversed" + + /// If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. If *normal*, the range is computed in relation to the extrema of the input data (same behavior as for cartesian axes). + [] + type rangemode = + static member inline tozero = Interop.mkPlotAttr "rangemode" "tozero" + static member inline nonnegative = Interop.mkPlotAttr "rangemode" "nonnegative" + static member inline normal = Interop.mkPlotAttr "rangemode" "normal" + + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + static member inline totalAscending = Interop.mkPlotAttr "categoryorder" "total ascending" + static member inline totalDescending = Interop.mkPlotAttr "categoryorder" "total descending" + static member inline minAscending = Interop.mkPlotAttr "categoryorder" "min ascending" + static member inline minDescending = Interop.mkPlotAttr "categoryorder" "min descending" + static member inline maxAscending = Interop.mkPlotAttr "categoryorder" "max ascending" + static member inline maxDescending = Interop.mkPlotAttr "categoryorder" "max descending" + static member inline sumAscending = Interop.mkPlotAttr "categoryorder" "sum ascending" + static member inline sumDescending = Interop.mkPlotAttr "categoryorder" "sum descending" + static member inline meanAscending = Interop.mkPlotAttr "categoryorder" "mean ascending" + static member inline meanDescending = Interop.mkPlotAttr "categoryorder" "mean descending" + static member inline medianAscending = Interop.mkPlotAttr "categoryorder" "median ascending" + static member inline medianDescending = Interop.mkPlotAttr "categoryorder" "median descending" + + /// Determines on which side of radial axis line the tick and tick labels appear. + [] + type side = + static member inline clockwise = Interop.mkPlotAttr "side" "clockwise" + static member inline counterclockwise = Interop.mkPlotAttr "side" "counterclockwise" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis. + [] + type layer = + static member inline aboveTraces = Interop.mkPlotAttr "layer" "above traces" + static member inline belowTraces = Interop.mkPlotAttr "layer" "below traces" + + /// Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar` + [] + type calendar = + static member inline gregorian = Interop.mkPlotAttr "calendar" "gregorian" + static member inline chinese = Interop.mkPlotAttr "calendar" "chinese" + static member inline coptic = Interop.mkPlotAttr "calendar" "coptic" + static member inline discworld = Interop.mkPlotAttr "calendar" "discworld" + static member inline ethiopian = Interop.mkPlotAttr "calendar" "ethiopian" + static member inline hebrew = Interop.mkPlotAttr "calendar" "hebrew" + static member inline islamic = Interop.mkPlotAttr "calendar" "islamic" + static member inline julian = Interop.mkPlotAttr "calendar" "julian" + static member inline mayan = Interop.mkPlotAttr "calendar" "mayan" + static member inline nanakshahi = Interop.mkPlotAttr "calendar" "nanakshahi" + static member inline nepali = Interop.mkPlotAttr "calendar" "nepali" + static member inline persian = Interop.mkPlotAttr "calendar" "persian" + static member inline jalali = Interop.mkPlotAttr "calendar" "jalali" + static member inline taiwan = Interop.mkPlotAttr "calendar" "taiwan" + static member inline thai = Interop.mkPlotAttr "calendar" "thai" + static member inline ummalqura = Interop.mkPlotAttr "calendar" "ummalqura" + + [] + type title = + /// Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type angularaxis = + /// A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`. + static member inline categoryarray (values: seq) = Interop.mkPlotAttr "categoryarray" values + /// Set the angular period. Has an effect only when `angularaxis.type` is *category*. + static member inline period (value: int) = Interop.mkPlotAttr "period" value + /// Set the angular period. Has an effect only when `angularaxis.type` is *category*. + static member inline period (value: float) = Interop.mkPlotAttr "period" value + /// Sets that start position (in degrees) of the angular axis By default, polar subplots with `direction` set to *counterclockwise* get a `rotation` of *0* which corresponds to due East (like what mathematicians prefer). In turn, polar with `direction` set to *clockwise* get a rotation of *90* which corresponds to due North (like on a compass), + static member inline rotation (value: int) = Interop.mkPlotAttr "rotation" value + /// Sets that start position (in degrees) of the angular axis By default, polar subplots with `direction` set to *counterclockwise* get a `rotation` of *0* which corresponds to due East (like what mathematicians prefer). In turn, polar with `direction` set to *clockwise* get a rotation of *90* which corresponds to due North (like on a compass), + static member inline rotation (value: float) = Interop.mkPlotAttr "rotation" value + /// Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline hoverformat (value: string) = Interop.mkPlotAttr "hoverformat" value + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this. + static member inline color (value: string) = Interop.mkPlotAttr "color" value + /// Determines whether or not a line bounding this axis is drawn. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Sets the axis line color. + static member inline linecolor (value: string) = Interop.mkPlotAttr "linecolor" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: int) = Interop.mkPlotAttr "linewidth" value + /// Sets the width (in px) of the axis line. + static member inline linewidth (value: float) = Interop.mkPlotAttr "linewidth" value + /// Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark. + static member inline showgrid (value: bool) = Interop.mkPlotAttr "showgrid" value + /// Sets the color of the grid lines. + static member inline gridcolor (value: string) = Interop.mkPlotAttr "gridcolor" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: int) = Interop.mkPlotAttr "gridwidth" value + /// Sets the width (in px) of the grid lines. + static member inline gridwidth (value: float) = Interop.mkPlotAttr "gridwidth" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets the source reference on plot.ly for categoryarray . + static member inline categoryarraysrc (value: string) = Interop.mkPlotAttr "categoryarraysrc" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module angularaxis = + /// Sets the angular axis type. If *linear*, set `thetaunit` to determine the unit in which axis value are shown. If *category, use `period` to set the number of integer coordinates around polar axis. + [] + type type' = + static member inline dash = Interop.mkPlotAttr "type" "-" + static member inline linear = Interop.mkPlotAttr "type" "linear" + static member inline category = Interop.mkPlotAttr "type" "category" + + /// Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values. + [] + type categoryorder = + static member inline trace = Interop.mkPlotAttr "categoryorder" "trace" + static member inline categoryAscending = Interop.mkPlotAttr "categoryorder" "category ascending" + static member inline categoryDescending = Interop.mkPlotAttr "categoryorder" "category descending" + static member inline array = Interop.mkPlotAttr "categoryorder" "array" + static member inline totalAscending = Interop.mkPlotAttr "categoryorder" "total ascending" + static member inline totalDescending = Interop.mkPlotAttr "categoryorder" "total descending" + static member inline minAscending = Interop.mkPlotAttr "categoryorder" "min ascending" + static member inline minDescending = Interop.mkPlotAttr "categoryorder" "min descending" + static member inline maxAscending = Interop.mkPlotAttr "categoryorder" "max ascending" + static member inline maxDescending = Interop.mkPlotAttr "categoryorder" "max descending" + static member inline sumAscending = Interop.mkPlotAttr "categoryorder" "sum ascending" + static member inline sumDescending = Interop.mkPlotAttr "categoryorder" "sum descending" + static member inline meanAscending = Interop.mkPlotAttr "categoryorder" "mean ascending" + static member inline meanDescending = Interop.mkPlotAttr "categoryorder" "mean descending" + static member inline medianAscending = Interop.mkPlotAttr "categoryorder" "median ascending" + static member inline medianDescending = Interop.mkPlotAttr "categoryorder" "median descending" + + /// Sets the format unit of the formatted *theta* values. Has an effect only when `angularaxis.type` is *linear*. + [] + type thetaunit = + static member inline radians = Interop.mkPlotAttr "thetaunit" "radians" + static member inline degrees = Interop.mkPlotAttr "thetaunit" "degrees" + + /// Sets the direction corresponding to positive angles. + [] + type direction = + static member inline counterclockwise = Interop.mkPlotAttr "direction" "counterclockwise" + static member inline clockwise = Interop.mkPlotAttr "direction" "clockwise" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis. + [] + type layer = + static member inline aboveTraces = Interop.mkPlotAttr "layer" "above traces" + static member inline belowTraces = Interop.mkPlotAttr "layer" "below traces" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type radialaxis = + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Defines the start and end point of this radial axis. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Defines the start and end point of this radial axis. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Polar chart subplots are not supported yet. This key has currently no effect. + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Polar chart subplots are not supported yet. This key has currently no effect. + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the orientation (an angle with respect to the origin) of the radial axis. + static member inline orientation (value: int) = Interop.mkPlotAttr "orientation" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the orientation (an angle with respect to the origin) of the radial axis. + static member inline orientation (value: float) = Interop.mkPlotAttr "orientation" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the line bounding this radial axis will be shown on the figure. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the radial axis ticks will feature tick labels. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this radial axis. + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this radial axis. + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the color of the tick lines on this radial axis. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this radial axis. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. + static member inline endpadding (value: int) = Interop.mkPlotAttr "endpadding" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. + static member inline endpadding (value: float) = Interop.mkPlotAttr "endpadding" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not this axis will be visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + + module radialaxis = + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the orientation (from the paper perspective) of the radial axis tick labels. + [] + type tickorientation = + static member inline horizontal = Interop.mkPlotAttr "tickorientation" "horizontal" + static member inline vertical = Interop.mkPlotAttr "tickorientation" "vertical" + + [] + type angularaxis = + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Defines the start and end point of this angular axis. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Defines the start and end point of this angular axis. + static member inline range (values: seq) = Interop.mkPlotAttr "range" values + /// Polar chart subplots are not supported yet. This key has currently no effect. + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Polar chart subplots are not supported yet. This key has currently no effect. + static member inline domain (values: seq) = Interop.mkPlotAttr "domain" values + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the line bounding this angular axis will be shown on the figure. + static member inline showline (value: bool) = Interop.mkPlotAttr "showline" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the angular axis ticks will feature tick labels. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this angular axis. + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this angular axis. + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the color of the tick lines on this angular axis. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this angular axis. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. + static member inline endpadding (value: int) = Interop.mkPlotAttr "endpadding" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. + static member inline endpadding (value: float) = Interop.mkPlotAttr "endpadding" value + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not this axis will be visible. + static member inline visible (value: bool) = Interop.mkPlotAttr "visible" value + + module angularaxis = + /// Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the orientation (from the paper perspective) of the angular axis tick labels. + [] + type tickorientation = + static member inline horizontal = Interop.mkPlotAttr "tickorientation" "horizontal" + static member inline vertical = Interop.mkPlotAttr "tickorientation" "vertical" + + [] + type legend = + /// Sets the legend background color. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Sets the color of the border enclosing the legend. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) of the border enclosing the legend. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) of the border enclosing the legend. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Determines the order at which the legend items are displayed. If *normal*, the items are displayed top-to-bottom in the same order as the input data. If *reversed*, the items are displayed in the opposite order as *normal*. If *grouped*, the items are displayed in groups (when a trace `legendgroup` is provided). if *grouped+reversed*, the items are displayed in the opposite order as *grouped*. + static member inline traceorder (values: seq) = Interop.mkPlotAttr "traceorder" values + /// Sets the amount of vertical space (in px) between legend groups. + static member inline tracegroupgap (value: int) = Interop.mkPlotAttr "tracegroupgap" value + /// Sets the amount of vertical space (in px) between legend groups. + static member inline tracegroupgap (value: float) = Interop.mkPlotAttr "tracegroupgap" value + /// Sets the x position (in normalized coordinates) of the legend. Defaults to *1.02* for vertical legends and defaults to *0* for horizontal legends. + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position (in normalized coordinates) of the legend. Defaults to *1.02* for vertical legends and defaults to *0* for horizontal legends. + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the y position (in normalized coordinates) of the legend. Defaults to *1* for vertical legends, defaults to *-0.1* for horizontal legends on graphs w/o range sliders and defaults to *1.1* for horizontal legends on graph with one or multiple range sliders. + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position (in normalized coordinates) of the legend. Defaults to *1* for vertical legends, defaults to *-0.1* for horizontal legends on graphs w/o range sliders and defaults to *1.1* for horizontal legends on graph with one or multiple range sliders. + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (value: bool) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (value: string) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (value: int) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (value: float) = Interop.mkPlotAttr "uirevision" value + /// Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`. + static member inline uirevision (values: seq) = Interop.mkPlotAttr "uirevision" values + + module legend = + /// Sets the orientation of the legend. + [] + type orientation = + static member inline v = Interop.mkPlotAttr "orientation" "v" + static member inline h = Interop.mkPlotAttr "orientation" "h" + + /// Determines if the legend items symbols scale with their corresponding *trace* attributes or remain *constant* independent of the symbol size on the graph. + [] + type itemsizing = + static member inline trace = Interop.mkPlotAttr "itemsizing" "trace" + static member inline constant = Interop.mkPlotAttr "itemsizing" "constant" + + /// Determines the behavior on legend item click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disable legend item click interactions. + [] + type itemclick = + static member inline toggle = Interop.mkPlotAttr "itemclick" "toggle" + static member inline toggleothers = Interop.mkPlotAttr "itemclick" "toggleothers" + static member inline false' = Interop.mkPlotAttr "itemclick" false + + /// Determines the behavior on legend item double-click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disable legend item double-click interactions. + [] + type itemdoubleclick = + static member inline toggle = Interop.mkPlotAttr "itemdoubleclick" "toggle" + static member inline toggleothers = Interop.mkPlotAttr "itemdoubleclick" "toggleothers" + static member inline false' = Interop.mkPlotAttr "itemdoubleclick" false + + /// Sets the legend's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the legend. Value *auto* anchors legends to the right for `x` values greater than or equal to 2/3, anchors legends to the left for `x` values less than or equal to 1/3 and anchors legends with respect to their center otherwise. + [] + type xanchor = + static member inline auto = Interop.mkPlotAttr "xanchor" "auto" + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets the legend's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the legend. Value *auto* anchors legends at their bottom for `y` values less than or equal to 1/3, anchors legends to at their top for `y` values greater than or equal to 2/3 and anchors legends with respect to their middle otherwise. + [] + type yanchor = + static member inline auto = Interop.mkPlotAttr "yanchor" "auto" + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the vertical alignment of the symbols with respect to their associated text. + [] + type valign = + static member inline top = Interop.mkPlotAttr "valign" "top" + static member inline middle = Interop.mkPlotAttr "valign" "middle" + static member inline bottom = Interop.mkPlotAttr "valign" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type colorscale = + /// Sets the default sequential colorscale for positive values. Note that `autocolorscale` must be true for this attribute to work. + static member inline sequential (values: seq) = Interop.mkPlotAttr "sequential" values + /// Sets the default sequential colorscale for negative values. Note that `autocolorscale` must be true for this attribute to work. + static member inline sequentialminus (values: seq) = Interop.mkPlotAttr "sequentialminus" values + /// Sets the default diverging colorscale. Note that `autocolorscale` must be true for this attribute to work. + static member inline diverging (values: seq) = Interop.mkPlotAttr "diverging" values + + [] + type coloraxis = + /// Determines whether or not the color domain is computed with respect to the input data (here corresponding trace color array(s)) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user. + static member inline cauto (value: bool) = Interop.mkPlotAttr "cauto" value + /// Sets the lower bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmax` must be set as well. + static member inline cmin (value: int) = Interop.mkPlotAttr "cmin" value + /// Sets the lower bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmax` must be set as well. + static member inline cmin (value: float) = Interop.mkPlotAttr "cmin" value + /// Sets the upper bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmin` must be set as well. + static member inline cmax (value: int) = Interop.mkPlotAttr "cmax" value + /// Sets the upper bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmin` must be set as well. + static member inline cmax (value: float) = Interop.mkPlotAttr "cmax" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as corresponding trace color array(s). Has no effect when `cauto` is `false`. + static member inline cmid (value: int) = Interop.mkPlotAttr "cmid" value + /// Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as corresponding trace color array(s). Has no effect when `cauto` is `false`. + static member inline cmid (value: float) = Interop.mkPlotAttr "cmid" value + /// Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis. + static member inline colorscale (values: seq) = Interop.mkPlotAttr "colorscale" values + /// Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. + static member inline autocolorscale (value: bool) = Interop.mkPlotAttr "autocolorscale" value + /// Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color. + static member inline reversescale (value: bool) = Interop.mkPlotAttr "reversescale" value + /// Determines whether or not a colorbar is displayed for this trace. + static member inline showscale (value: bool) = Interop.mkPlotAttr "showscale" value + + module coloraxis = + [] + type colorbar = + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: int) = Interop.mkPlotAttr "thickness" value + /// Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels. + static member inline thickness (value: float) = Interop.mkPlotAttr "thickness" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: int) = Interop.mkPlotAttr "len" value + /// Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends. + static member inline len (value: float) = Interop.mkPlotAttr "len" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: int) = Interop.mkPlotAttr "x" value + /// Sets the x position of the color bar (in plot fraction). + static member inline x (value: float) = Interop.mkPlotAttr "x" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: int) = Interop.mkPlotAttr "xpad" value + /// Sets the amount of padding (in px) along the x direction. + static member inline xpad (value: float) = Interop.mkPlotAttr "xpad" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: int) = Interop.mkPlotAttr "y" value + /// Sets the y position of the color bar (in plot fraction). + static member inline y (value: float) = Interop.mkPlotAttr "y" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: int) = Interop.mkPlotAttr "ypad" value + /// Sets the amount of padding (in px) along the y direction. + static member inline ypad (value: float) = Interop.mkPlotAttr "ypad" value + /// Sets the axis line color. + static member inline outlinecolor (value: string) = Interop.mkPlotAttr "outlinecolor" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: int) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the width (in px) of the axis line. + static member inline outlinewidth (value: float) = Interop.mkPlotAttr "outlinewidth" value + /// Sets the axis line color. + static member inline bordercolor (value: string) = Interop.mkPlotAttr "bordercolor" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: int) = Interop.mkPlotAttr "borderwidth" value + /// Sets the width (in px) or the border enclosing this color bar. + static member inline borderwidth (value: float) = Interop.mkPlotAttr "borderwidth" value + /// Sets the color of padded area. + static member inline bgcolor (value: string) = Interop.mkPlotAttr "bgcolor" value + /// Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*. + static member inline nticks (value: int) = Interop.mkPlotAttr "nticks" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: bool) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: string) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: int) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (value: float) = Interop.mkPlotAttr "tick0" value + /// Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears. + static member inline tick0 (values: seq) = Interop.mkPlotAttr "tick0" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: bool) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: string) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: int) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (value: float) = Interop.mkPlotAttr "dtick" value + /// Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48* + static member inline dtick (values: seq) = Interop.mkPlotAttr "dtick" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`. + static member inline tickvals (values: seq) = Interop.mkPlotAttr "tickvals" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`. + static member inline ticktext (values: seq) = Interop.mkPlotAttr "ticktext" values + /// Sets the tick length (in px). + static member inline ticklen (value: int) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick length (in px). + static member inline ticklen (value: float) = Interop.mkPlotAttr "ticklen" value + /// Sets the tick width (in px). + static member inline tickwidth (value: int) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick width (in px). + static member inline tickwidth (value: float) = Interop.mkPlotAttr "tickwidth" value + /// Sets the tick color. + static member inline tickcolor (value: string) = Interop.mkPlotAttr "tickcolor" value + /// Determines whether or not the tick labels are drawn. + static member inline showticklabels (value: bool) = Interop.mkPlotAttr "showticklabels" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: int) = Interop.mkPlotAttr "tickangle" value + /// Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically. + static member inline tickangle (value: float) = Interop.mkPlotAttr "tickangle" value + /// Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46* + static member inline tickformat (value: string) = Interop.mkPlotAttr "tickformat" value + /// Sets a tick label prefix. + static member inline tickprefix (value: string) = Interop.mkPlotAttr "tickprefix" value + /// Sets a tick label suffix. + static member inline ticksuffix (value: string) = Interop.mkPlotAttr "ticksuffix" value + /// If \"true\", even 4-digit integers are separated + static member inline separatethousands (value: bool) = Interop.mkPlotAttr "separatethousands" value + /// Sets the source reference on plot.ly for tickvals . + static member inline tickvalssrc (value: string) = Interop.mkPlotAttr "tickvalssrc" value + /// Sets the source reference on plot.ly for ticktext . + static member inline ticktextsrc (value: string) = Interop.mkPlotAttr "ticktextsrc" value + + module colorbar = + /// Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value. + [] + type thicknessmode = + static member inline fraction = Interop.mkPlotAttr "thicknessmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "thicknessmode" "pixels" + + /// Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value. + [] + type lenmode = + static member inline fraction = Interop.mkPlotAttr "lenmode" "fraction" + static member inline pixels = Interop.mkPlotAttr "lenmode" "pixels" + + /// Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. + [] + type xanchor = + static member inline left = Interop.mkPlotAttr "xanchor" "left" + static member inline center = Interop.mkPlotAttr "xanchor" "center" + static member inline right = Interop.mkPlotAttr "xanchor" "right" + + /// Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. + [] + type yanchor = + static member inline top = Interop.mkPlotAttr "yanchor" "top" + static member inline middle = Interop.mkPlotAttr "yanchor" "middle" + static member inline bottom = Interop.mkPlotAttr "yanchor" "bottom" + + /// Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided). + [] + type tickmode = + static member inline auto = Interop.mkPlotAttr "tickmode" "auto" + static member inline linear = Interop.mkPlotAttr "tickmode" "linear" + static member inline array = Interop.mkPlotAttr "tickmode" "array" + + /// Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines. + [] + type ticks = + static member inline outside = Interop.mkPlotAttr "ticks" "outside" + static member inline inside = Interop.mkPlotAttr "ticks" "inside" + static member inline none = Interop.mkPlotAttr "ticks" "" + + /// If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden. + [] + type showtickprefix = + static member inline all = Interop.mkPlotAttr "showtickprefix" "all" + static member inline first = Interop.mkPlotAttr "showtickprefix" "first" + static member inline last = Interop.mkPlotAttr "showtickprefix" "last" + static member inline none = Interop.mkPlotAttr "showtickprefix" "none" + + /// Same as `showtickprefix` but for tick suffixes. + [] + type showticksuffix = + static member inline all = Interop.mkPlotAttr "showticksuffix" "all" + static member inline first = Interop.mkPlotAttr "showticksuffix" "first" + static member inline last = Interop.mkPlotAttr "showticksuffix" "last" + static member inline none = Interop.mkPlotAttr "showticksuffix" "none" + + /// Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. + [] + type exponentformat = + static member inline none = Interop.mkPlotAttr "exponentformat" "none" + static member inline e = Interop.mkPlotAttr "exponentformat" "e" + static member inline E = Interop.mkPlotAttr "exponentformat" "E" + static member inline power = Interop.mkPlotAttr "exponentformat" "power" + static member inline SI = Interop.mkPlotAttr "exponentformat" "SI" + static member inline B = Interop.mkPlotAttr "exponentformat" "B" + + /// If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear. + [] + type showexponent = + static member inline all = Interop.mkPlotAttr "showexponent" "all" + static member inline first = Interop.mkPlotAttr "showexponent" "first" + static member inline last = Interop.mkPlotAttr "showexponent" "last" + static member inline none = Interop.mkPlotAttr "showexponent" "none" + + [] + type tickfont = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + + [] + type title = + /// Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated. + static member inline text (value: string) = Interop.mkPlotAttr "text" value + + module title = + /// Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute. + [] + type side = + static member inline right = Interop.mkPlotAttr "side" "right" + static member inline top = Interop.mkPlotAttr "side" "top" + static member inline bottom = Interop.mkPlotAttr "side" "bottom" + + [] + type font = + /// HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*. + static member inline family (value: string) = Interop.mkPlotAttr "family" value + static member inline size (value: int) = Interop.mkPlotAttr "size" value + static member inline size (value: float) = Interop.mkPlotAttr "size" value + static member inline color (value: string) = Interop.mkPlotAttr "color" value + diff --git a/src/Feliz.Plotly/Types.fs b/src/Feliz.Plotly/Types.fs new file mode 100644 index 0000000..aa9cf8d --- /dev/null +++ b/src/Feliz.Plotly/Types.fs @@ -0,0 +1,158 @@ +namespace Feliz.Plotly + +(*//////////////////////////////// +/// THIS FILE IS AUTO-GENERATED // +////////////////////////////////*) + +type IPlotProperty = interface end + +type IConfigProperty = interface end + +type ILayoutProperty = interface end + +type IDataProperty = interface end + +type IEditsProperty = interface end + +type IFontProperty = interface end + +type ITitleProperty = interface end + +type IMarginProperty = interface end + +type IModebarProperty = interface end + +type ITransitionProperty = interface end + +type IHoverlabelProperty = interface end + +type IGridProperty = interface end + +type IXaxisProperty = interface end + +type IYaxisProperty = interface end + +type ITernaryProperty = interface end + +type ISceneProperty = interface end + +type IGeoProperty = interface end + +type IMapboxProperty = interface end + +type IPolarProperty = interface end + +type IRadialaxisProperty = interface end + +type IAngularaxisProperty = interface end + +type IEditTypeProperty = interface end + +type ILegendProperty = interface end + +type IAnnotationsProperty = interface end + +type IShapesProperty = interface end + +type IImagesProperty = interface end + +type IUpdatemenusProperty = interface end + +type ISlidersProperty = interface end + +type IColorscaleProperty = interface end + +type IColoraxisProperty = interface end + +type IScatterProperty = interface end + +type IBarProperty = interface end + +type IBoxProperty = interface end + +type IHeatmapProperty = interface end + +type IHistogramProperty = interface end + +type IHistogram2dProperty = interface end + +type IHistogram2dcontourProperty = interface end + +type IContourProperty = interface end + +type IScatterternaryProperty = interface end + +type IViolinProperty = interface end + +type IFunnelProperty = interface end + +type IWaterfallProperty = interface end + +type IPieProperty = interface end + +type ISunburstProperty = interface end + +type ITreemapProperty = interface end + +type IFunnelareaProperty = interface end + +type IScatter3dProperty = interface end + +type ISurfaceProperty = interface end + +type IIsosurfaceProperty = interface end + +type IVolumeProperty = interface end + +type IMesh3dProperty = interface end + +type IConeProperty = interface end + +type IStreamtubeProperty = interface end + +type IScattergeoProperty = interface end + +type IChoroplethProperty = interface end + +type IScatterglProperty = interface end + +type ISplomProperty = interface end + +type IPointcloudProperty = interface end + +type IHeatmapglProperty = interface end + +type IParcoordsProperty = interface end + +type IParcatsProperty = interface end + +type IScattermapboxProperty = interface end + +type IChoroplethmapboxProperty = interface end + +type IDensitymapboxProperty = interface end + +type ISankeyProperty = interface end + +type IIndicatorProperty = interface end + +type ITableProperty = interface end + +type ICarpetProperty = interface end + +type IScattercarpetProperty = interface end + +type IContourcarpetProperty = interface end + +type IOhlcProperty = interface end + +type ICandlestickProperty = interface end + +type IScatterpolarProperty = interface end + +type IScatterpolarglProperty = interface end + +type IBarpolarProperty = interface end + +type IAreaProperty = interface end + diff --git a/src/Feliz.Plotly/paket.references b/src/Feliz.Plotly/paket.references new file mode 100644 index 0000000..52c1552 --- /dev/null +++ b/src/Feliz.Plotly/paket.references @@ -0,0 +1,5 @@ +group Plotly + Fable.Core + Fable.Browser.Dom + Feliz + FSharp.Core \ No newline at end of file diff --git a/src/Feliz.Plotly/paket.template b/src/Feliz.Plotly/paket.template new file mode 100644 index 0000000..949c7d5 --- /dev/null +++ b/src/Feliz.Plotly/paket.template @@ -0,0 +1,11 @@ +type file +id Feliz.Plotly +authors Cody Johnson +description + Fable bindings written in the Feliz-style for plotly.js +language + F# +tags + fsharp +files + ../../bin/Feliz.Plotly ==> lib diff --git a/src/plot-schema.json b/src/plot-schema.json new file mode 100644 index 0000000..4d71963 --- /dev/null +++ b/src/plot-schema.json @@ -0,0 +1,67979 @@ +{ + "defs": { + "valObjects": { + "data_array": { + "description": "An {array} of data. The value MUST be an {array}, or we ignore it. Note that typed arrays (e.g. Float32Array) are supported.", + "requiredOpts": [], + "otherOpts": [ + "dflt" + ] + }, + "enumerated": { + "description": "Enumerated value type. The available values are listed in `values`.", + "requiredOpts": [ + "values" + ], + "otherOpts": [ + "dflt", + "coerceNumber", + "arrayOk" + ] + }, + "boolean": { + "description": "A boolean (true/false) value.", + "requiredOpts": [], + "otherOpts": [ + "dflt" + ] + }, + "number": { + "description": "A number or a numeric value (e.g. a number inside a string). When applicable, values greater (less) than `max` (`min`) are coerced to the `dflt`.", + "requiredOpts": [], + "otherOpts": [ + "dflt", + "min", + "max", + "arrayOk" + ] + }, + "integer": { + "description": "An integer or an integer inside a string. When applicable, values greater (less) than `max` (`min`) are coerced to the `dflt`.", + "requiredOpts": [], + "otherOpts": [ + "dflt", + "min", + "max", + "arrayOk" + ] + }, + "string": { + "description": "A string value. Numbers are converted to strings except for attributes with `strict` set to true.", + "requiredOpts": [], + "otherOpts": [ + "dflt", + "noBlank", + "strict", + "arrayOk", + "values" + ] + }, + "color": { + "description": "A string describing color. Supported formats: - hex (e.g. '#d3d3d3') - rgb (e.g. 'rgb(255, 0, 0)') - rgba (e.g. 'rgb(255, 0, 0, 0.5)') - hsl (e.g. 'hsl(0, 100%, 50%)') - hsv (e.g. 'hsv(0, 100%, 100%)') - named colors (full list: http://www.w3.org/TR/css3-color/#svg-color)", + "requiredOpts": [], + "otherOpts": [ + "dflt", + "arrayOk" + ] + }, + "colorlist": { + "description": "A list of colors. Must be an {array} containing valid colors.", + "requiredOpts": [], + "otherOpts": [ + "dflt" + ] + }, + "colorscale": { + "description": "A Plotly colorscale either picked by a name: (any of Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis ) customized as an {array} of 2-element {arrays} where the first element is the normalized color level value (starting at *0* and ending at *1*), and the second item is a valid color string.", + "requiredOpts": [], + "otherOpts": [ + "dflt" + ] + }, + "angle": { + "description": "A number (in degree) between -180 and 180.", + "requiredOpts": [], + "otherOpts": [ + "dflt" + ] + }, + "subplotid": { + "description": "An id string of a subplot type (given by dflt), optionally followed by an integer >1. e.g. if dflt='geo', we can have 'geo', 'geo2', 'geo3', ...", + "requiredOpts": [ + "dflt" + ], + "otherOpts": [ + "regex" + ] + }, + "flaglist": { + "description": "A string representing a combination of flags (order does not matter here). Combine any of the available `flags` with *+*. (e.g. ('lines+markers')). Values in `extras` cannot be combined.", + "requiredOpts": [ + "flags" + ], + "otherOpts": [ + "dflt", + "extras", + "arrayOk" + ] + }, + "any": { + "description": "Any type.", + "requiredOpts": [], + "otherOpts": [ + "dflt", + "values", + "arrayOk" + ] + }, + "info_array": { + "description": "An {array} of plot information.", + "requiredOpts": [ + "items" + ], + "otherOpts": [ + "dflt", + "freeLength", + "dimensions" + ] + } + }, + "metaKeys": [ + "_isSubplotObj", + "_isLinkedToArray", + "_arrayAttrRegexps", + "_deprecated", + "description", + "role", + "editType", + "impliedEdits" + ], + "editType": { + "traces": { + "valType": "flaglist", + "extras": [ + "none" + ], + "flags": [ + "calc", + "clearAxisTypes", + "plot", + "style", + "markerSize", + "colorbars" + ], + "description": "trace attributes should include an `editType` string matching this flaglist. *calc* is the most extensive: a full `Plotly.plot` starting by clearing `gd.calcdata` to force it to be regenerated *clearAxisTypes* resets the types of the axes this trace is on, because new data could cause the automatic axis type detection to change. Log type will not be cleared, as that is never automatically chosen so must have been user-specified. *plot* calls `Plotly.plot` but without first clearing `gd.calcdata`. *style* only calls `module.style` (or module.editStyle) for all trace modules and redraws the legend. *markerSize* is like *style*, but propagate axis-range changes due to scatter `marker.size` *colorbars* only redraws colorbars." + }, + "layout": { + "valType": "flaglist", + "extras": [ + "none" + ], + "flags": [ + "calc", + "plot", + "legend", + "ticks", + "axrange", + "layoutstyle", + "modebar", + "camera", + "arraydraw", + "colorbars" + ], + "description": "layout attributes should include an `editType` string matching this flaglist. *calc* is the most extensive: a full `Plotly.plot` starting by clearing `gd.calcdata` to force it to be regenerated *plot* calls `Plotly.plot` but without first clearing `gd.calcdata`. *legend* only redraws the legend. *ticks* only redraws axis ticks, labels, and gridlines. *axrange* minimal sequence when updating axis ranges. *layoutstyle* reapplies global and SVG cartesian axis styles. *modebar* just updates the modebar. *camera* just updates the camera settings for gl3d scenes. *arraydraw* allows component arrays to invoke the redraw routines just for the component(s) that changed. *colorbars* only redraws colorbars." + } + }, + "impliedEdits": { + "description": "Sometimes when an attribute is changed, other attributes must be altered as well in order to achieve the intended result. For example, when `range` is specified, it is important to set `autorange` to `false` or the new `range` value would be lost in the redraw. `impliedEdits` is the mechanism to do this: `impliedEdits: {autorange: false}`. Each key is a relative paths to the attribute string to change, using *^* to ascend into the parent container, for example `range[0]` has `impliedEdits: {*^autorange*: false}`. A value of `undefined` means that the attribute will not be changed, but its previous value should be recorded in case we want to reverse this change later. For example, `autorange` has `impliedEdits: {*range[0]*: undefined, *range[1]*:undefined} because the range will likely be changed by redraw." + } + }, + "traces": { + "scatter": { + "meta": { + "description": "The scatter trace type encompasses line charts, scatter charts, text charts, and bubble charts. The data visualized as scatter point or lines is set in `x` and `y`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays." + }, + "categories": [ + "cartesian", + "svg", + "symbols", + "errorBarsOK", + "showLegend", + "scatter-like", + "zoomScale" + ], + "animatable": true, + "type": "scatter", + "attributes": { + "type": "scatter", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Sets the x coordinates.", + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step." + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "anim": true, + "description": "Sets the x coordinate step. See `x0` for more info." + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Sets the y coordinates.", + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step." + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "anim": true, + "description": "Sets the y coordinate step. See `y0` for more info." + }, + "stackgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several scatter traces (on the same subplot) to the same stackgroup in order to add their y values (or their x values if `orientation` is *h*). If blank or omitted this trace will not be stacked. Stacking also turns `fill` on by default, using *tonexty* (*tonextx*) if `orientation` is *h* (*v*) and sets the default `mode` to *lines* irrespective of point count. You can only stack on a numeric (linear or log) axis. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order." + }, + "orientation": { + "valType": "enumerated", + "role": "info", + "values": [ + "v", + "h" + ], + "editType": "calc", + "description": "Only relevant when `stackgroup` is used, and only the first `orientation` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the stacking direction. With *v* (*h*), the y (x) values of subsequent traces are added. Also affects the default value of `fill`." + }, + "groupnorm": { + "valType": "enumerated", + "values": [ + "", + "fraction", + "percent" + ], + "dflt": "", + "role": "info", + "editType": "calc", + "description": "Only relevant when `stackgroup` is used, and only the first `groupnorm` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Sets the normalization for the sum of this `stackgroup`. With *fraction*, the value of each trace at each location is divided by the sum of all trace values at that location. *percent* is the same but multiplied by 100 to show percentages. If there are multiple subplots, or multiple `stackgroup`s on one subplot, each will be normalized within its own set." + }, + "stackgaps": { + "valType": "enumerated", + "values": [ + "infer zero", + "interpolate" + ], + "dflt": "infer zero", + "role": "info", + "editType": "calc", + "description": "Only relevant when `stackgroup` is used, and only the first `stackgaps` found in the `stackgroup` will be used - including if `visible` is *legendonly* but not if it is `false`. Determines how we handle locations at which other traces in this group have data but this one does not. With *infer zero* we insert a zero at these locations. With *interpolate* we linearly interpolate between existing values, and extrapolate a constant beyond the existing values." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*." + }, + "hoveron": { + "valType": "flaglist", + "flags": [ + "points", + "fills" + ], + "role": "info", + "editType": "style", + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "anim": true, + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "anim": true, + "description": "Sets the line width (in px)." + }, + "shape": { + "valType": "enumerated", + "values": [ + "linear", + "spline", + "hv", + "vh", + "hvh", + "vhv" + ], + "dflt": "linear", + "role": "style", + "editType": "plot", + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes." + }, + "smoothing": { + "valType": "number", + "min": 0, + "max": 1.3, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "simplify": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Simplifies lines by removing nearly-collinear points. When transitioning lines, it may be desirable to disable this so that the number of points along the resulting SVG path is unaffected." + }, + "editType": "plot", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "cliponaxis": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*." + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" + ], + "role": "style", + "editType": "calc", + "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order." + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "anim": true, + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "marker": { + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "style", + "anim": true, + "description": "Sets the marker opacity." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "anim": true, + "description": "Sets the marker size (in px)." + }, + "maxdisplayed": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "anim": true, + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "anim": true + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "gradient": { + "type": { + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ], + "arrayOk": true, + "dflt": "none", + "role": "style", + "editType": "calc", + "description": "Sets the type of gradient used to fill the markers" + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical." + }, + "editType": "calc", + "role": "object", + "typesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for type .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "anim": true + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the text font.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "r": { + "valType": "data_array", + "editType": "calc", + "description": "r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only.", + "role": "data" + }, + "t": { + "valType": "data_array", + "editType": "calc", + "description": "t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only.", + "role": "data" + }, + "error_x": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "copy_ystyle": { + "valType": "boolean", + "role": "style", + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "style", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "error_y": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "style", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "rsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for r .", + "editType": "none" + }, + "tsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for t .", + "editType": "none" + } + } + }, + "bar": { + "meta": { + "description": "The data visualized by the span of the bars is set in `y` if `orientation` is set th *v* (the default) and the labels are set in `x`. By setting `orientation` to *h*, the roles are interchanged." + }, + "categories": [ + "bar-like", + "cartesian", + "svg", + "bar", + "oriented", + "errorBarsOK", + "showLegend", + "zoomScale" + ], + "animatable": true, + "type": "bar", + "attributes": { + "type": "bar", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Sets the x coordinates.", + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step." + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "anim": true, + "description": "Sets the x coordinate step. See `x0` for more info." + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Sets the y coordinates.", + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "anim": true, + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step." + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "anim": true, + "description": "Sets the y coordinate step. See `y0` for more info." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "textposition": { + "valType": "enumerated", + "role": "info", + "values": [ + "inside", + "outside", + "auto", + "none" + ], + "dflt": "none", + "arrayOk": true, + "editType": "calc", + "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside." + }, + "insidetextanchor": { + "valType": "enumerated", + "values": [ + "end", + "middle", + "start" + ], + "dflt": "end", + "role": "info", + "editType": "plot", + "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode." + }, + "textangle": { + "valType": "angle", + "dflt": "auto", + "role": "info", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "insidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text` lying inside the bar.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "outsidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text` lying outside the bar.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "constraintext": { + "valType": "enumerated", + "values": [ + "inside", + "outside", + "both", + "none" + ], + "role": "info", + "dflt": "both", + "editType": "calc", + "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself." + }, + "cliponaxis": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*." + }, + "orientation": { + "valType": "enumerated", + "role": "info", + "values": [ + "v", + "h" + ], + "editType": "calc+clearAxisTypes", + "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal)." + }, + "base": { + "valType": "any", + "dflt": null, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Sets where the bar base is drawn (in position axis units). In *stack* or *relative* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead." + }, + "offset": { + "valType": "number", + "dflt": null, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead." + }, + "width": { + "valType": "number", + "dflt": null, + "min": 0, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Sets the bar width (in position axis units)." + }, + "marker": { + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "anim": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0 + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "arrayOk": true, + "dflt": 1, + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the opacity of the bars." + }, + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "offsetgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up." + }, + "alignmentgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "r": { + "valType": "data_array", + "editType": "calc", + "description": "r coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the radial coordinatesfor legacy polar chart only.", + "role": "data" + }, + "t": { + "valType": "data_array", + "editType": "calc", + "description": "t coordinates in scatter traces are deprecated!Please switch to the *scatterpolar* trace type.Sets the angular coordinatesfor legacy polar chart only.", + "role": "data" + }, + "_deprecated": { + "bardir": { + "valType": "enumerated", + "role": "info", + "editType": "calc", + "values": [ + "v", + "h" + ], + "description": "Renamed to `orientation`." + } + }, + "error_x": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "copy_ystyle": { + "valType": "boolean", + "role": "style", + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "style", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "error_y": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "style", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "basesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for base .", + "editType": "none" + }, + "offsetsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for offset .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "rsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for r .", + "editType": "none" + }, + "tsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for t .", + "editType": "none" + } + }, + "layoutAttributes": { + "barmode": { + "valType": "enumerated", + "values": [ + "stack", + "group", + "overlay", + "relative" + ], + "dflt": "group", + "role": "info", + "editType": "calc", + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars." + }, + "barnorm": { + "valType": "enumerated", + "values": [ + "", + "fraction", + "percent" + ], + "dflt": "", + "role": "info", + "editType": "calc", + "description": "Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages." + }, + "bargap": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates." + }, + "bargroupgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate." + } + } + }, + "box": { + "meta": { + "description": "In vertical (horizontal) box plots, statistics are computed using `y` (`x`) values. By supplying an `x` (`y`) array, one box per distinct x (y) value is drawn If no `x` (`y`) {array} is provided, a single box is drawn. That box position is then positioned with with `name` or with `x0` (`y0`) if provided. Each box spans from quartile 1 (Q1) to quartile 3 (Q3). The second quartile (Q2) is marked by a line inside the box. By default, the whiskers correspond to the box' edges +/- 1.5 times the interquartile range (IQR: Q3-Q1), see *boxpoints* for other options." + }, + "categories": [ + "cartesian", + "svg", + "symbols", + "oriented", + "box-violin", + "showLegend", + "boxLayout", + "zoomScale" + ], + "animatable": false, + "type": "box", + "attributes": { + "type": "box", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y sample data or coordinates. See overview for more info.", + "role": "data" + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x sample data or coordinates. See overview for more info.", + "role": "data" + }, + "x0": { + "valType": "any", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinate of the box. See overview for more info." + }, + "y0": { + "valType": "any", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinate of the box. See overview for more info." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the trace name. The trace name appear as the legend item and on hover. For box traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Same as `text`." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "whiskerwidth": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.5, + "role": "style", + "editType": "calc", + "description": "Sets the width of the whiskers relative to the box' width. For example, with 1, the whiskers are as wide as the box(es)." + }, + "notched": { + "valType": "boolean", + "role": "style", + "editType": "calc", + "description": "Determines whether or not notches should be drawn." + }, + "notchwidth": { + "valType": "number", + "min": 0, + "max": 0.5, + "dflt": 0.25, + "role": "style", + "editType": "calc", + "description": "Sets the width of the notches relative to the box' width. For example, with 0, the notches are as wide as the box(es)." + }, + "boxpoints": { + "valType": "enumerated", + "values": [ + "all", + "outliers", + "suspectedoutliers", + false + ], + "dflt": "outliers", + "role": "style", + "editType": "calc", + "description": "If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the box(es) are shown with no sample points" + }, + "boxmean": { + "valType": "enumerated", + "values": [ + true, + "sd", + false + ], + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If *true*, the mean of the box(es)' underlying distribution is drawn as a dashed line inside the box(es). If *sd* the standard deviation is also drawn." + }, + "jitter": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the box(es)." + }, + "pointpos": { + "valType": "number", + "min": -2, + "max": 2, + "role": "style", + "editType": "calc", + "description": "Sets the position of the sample points in relation to the box(es). If *0*, the sample points are places over the center of the box(es). Positive (negative) values correspond to positions to the right (left) for vertical boxes and above (below) for horizontal boxes" + }, + "orientation": { + "valType": "enumerated", + "values": [ + "v", + "h" + ], + "role": "style", + "editType": "calc+clearAxisTypes", + "description": "Sets the orientation of the box(es). If *v* (*h*), the distribution is visualized along the vertical (horizontal)." + }, + "width": { + "valType": "number", + "min": 0, + "role": "info", + "dflt": 0, + "editType": "calc", + "description": "Sets the width of the box in data coordinate If *0* (default value) the width is automatically selected based on the positions of other box traces in the same subplot." + }, + "marker": { + "outliercolor": { + "valType": "color", + "dflt": "rgba(0, 0, 0, 0)", + "role": "style", + "editType": "style", + "description": "Sets the color of the outlier sample points." + }, + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": false, + "role": "style", + "editType": "plot", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity.", + "dflt": 1 + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444" + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0 + }, + "outliercolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the border line color of the outlier sample points. Defaults to marker.color" + }, + "outlierwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "style", + "description": "Sets the border line width (in px) of the outlier sample points." + }, + "editType": "style", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the color of line bounding the box(es)." + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "editType": "style", + "description": "Sets the width (in px) of line bounding the box(es)." + }, + "editType": "plot", + "role": "object" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "offsetgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up." + }, + "alignmentgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "hoveron": { + "valType": "flaglist", + "flags": [ + "boxes", + "points" + ], + "dflt": "boxes+points", + "role": "info", + "editType": "style", + "description": "Do the hover effects highlight individual boxes or sample points or both?" + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "layoutAttributes": { + "boxmode": { + "valType": "enumerated", + "values": [ + "group", + "overlay" + ], + "dflt": "overlay", + "role": "info", + "editType": "calc", + "description": "Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set." + }, + "boxgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.3, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set." + }, + "boxgroupgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.3, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set." + } + } + }, + "heatmap": { + "meta": { + "description": "The data that describes the heatmap value-to-color mapping is set in `z`. Data in `z` can either be a {2D array} of values (ragged or not) or a 1D array of values. In the case where `z` is a {2D array}, say that `z` has N rows and M columns. Then, by default, the resulting heatmap will have N partitions along the y axis and M partitions along the x axis. In other words, the i-th row/ j-th column cell in `z` is mapped to the i-th partition of the y axis (starting from the bottom of the plot) and the j-th partition of the x-axis (starting from the left of the plot). This behavior can be flipped by using `transpose`. Moreover, `x` (`y`) can be provided with M or M+1 (N or N+1) elements. If M (N), then the coordinates correspond to the center of the heatmap cells and the cells have equal width. If M+1 (N+1), then the coordinates correspond to the edges of the heatmap cells. In the case where `z` is a 1D {array}, the x and y coordinates must be provided in `x` and `y` respectively to form data triplets." + }, + "categories": [ + "cartesian", + "svg", + "2dMap" + ], + "animatable": false, + "type": "heatmap", + "attributes": { + "type": "heatmap", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the z data.", + "role": "data" + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "impliedEdits": { + "xtype": "array" + }, + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the x coordinate step. See `x0` for more info.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "impliedEdits": { + "ytype": "array" + }, + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the y coordinate step. See `y0` for more info.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "text": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text elements associated with each z value.", + "role": "data" + }, + "hovertext": { + "valType": "data_array", + "editType": "calc", + "description": "Same as `text`.", + "role": "data" + }, + "transpose": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Transposes the z data." + }, + "xtype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided)." + }, + "ytype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)" + }, + "zsmooth": { + "valType": "enumerated", + "values": [ + "fast", + "best", + false + ], + "dflt": false, + "role": "style", + "editType": "calc", + "description": "Picks a smoothing algorithm use to smooth `z` data." + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in." + }, + "xgap": { + "valType": "number", + "dflt": 0, + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the horizontal gap (in pixels) between bricks." + }, + "ygap": { + "valType": "number", + "dflt": 0, + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the vertical gap (in pixels) between bricks." + }, + "zhoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "histogram": { + "meta": { + "description": "The sample data from which statistics are computed is set in `x` for vertically spanning histograms and in `y` for horizontally spanning histograms. Binning options are set `xbins` and `ybins` respectively if no aggregation data is provided." + }, + "categories": [ + "bar-like", + "cartesian", + "svg", + "bar", + "histogram", + "oriented", + "errorBarsOK", + "showLegend" + ], + "animatable": false, + "type": "histogram", + "attributes": { + "type": "histogram", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the sample data to be binned on the x axis.", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the sample data to be binned on the y axis.", + "role": "data" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Same as `text`." + }, + "orientation": { + "valType": "enumerated", + "role": "info", + "values": [ + "v", + "h" + ], + "editType": "calc+clearAxisTypes", + "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal)." + }, + "histfunc": { + "valType": "enumerated", + "values": [ + "count", + "sum", + "avg", + "min", + "max" + ], + "role": "style", + "dflt": "count", + "editType": "calc", + "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively." + }, + "histnorm": { + "valType": "enumerated", + "values": [ + "", + "percent", + "probability", + "density", + "probability density" + ], + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1)." + }, + "cumulative": { + "enabled": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "If true, display the cumulative distribution by summing the binned values. Use the `direction` and `centralbin` attributes to tune the accumulation method. Note: in this mode, the *density* `histnorm` settings behave the same as their equivalents without *density*: ** and *density* both rise to the number of data points, and *probability* and *probability density* both rise to the number of sample points." + }, + "direction": { + "valType": "enumerated", + "values": [ + "increasing", + "decreasing" + ], + "dflt": "increasing", + "role": "info", + "editType": "calc", + "description": "Only applies if cumulative is enabled. If *increasing* (default) we sum all prior bins, so the result increases from left to right. If *decreasing* we sum later bins so the result decreases from left to right." + }, + "currentbin": { + "valType": "enumerated", + "values": [ + "include", + "exclude", + "half" + ], + "dflt": "include", + "role": "info", + "editType": "calc", + "description": "Only applies if cumulative is enabled. Sets whether the current bin is included, excluded, or has half of its value included in the current cumulative value. *include* is the default for compatibility with various other tools, however it introduces a half-bin bias to the results. *exclude* makes the opposite half-bin bias, and *half* removes it." + }, + "editType": "calc", + "role": "object" + }, + "nbinsx": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided." + }, + "xbins": { + "start": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins." + }, + "end": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers." + }, + "size": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above." + }, + "editType": "calc", + "role": "object" + }, + "nbinsy": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided." + }, + "ybins": { + "start": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins." + }, + "end": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers." + }, + "size": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above." + }, + "editType": "calc", + "role": "object" + }, + "autobinx": { + "valType": "boolean", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace." + }, + "autobiny": { + "valType": "boolean", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace." + }, + "bingroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set a group of histogram traces which will have compatible bin settings. Note that traces on the same subplot and with the same *orientation* under `barmode` *stack*, *relative* and *group* are forced into the same bingroup, Using `bingroup`, traces under `barmode` *overlay* and on different axes (of the same axis type) can have compatible bin settings. Note that histogram and histogram2d* trace can share the same `bingroup`" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `binNumber` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "marker": { + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0 + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "arrayOk": true, + "dflt": 1, + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the opacity of the bars." + }, + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "offsetgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up." + }, + "alignmentgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "_deprecated": { + "bardir": { + "valType": "enumerated", + "role": "info", + "editType": "calc", + "values": [ + "v", + "h" + ], + "description": "Renamed to `orientation`." + } + }, + "error_x": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "copy_ystyle": { + "valType": "boolean", + "role": "style", + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "style", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "error_y": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "style" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "style", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "layoutAttributes": { + "barmode": { + "valType": "enumerated", + "values": [ + "stack", + "group", + "overlay", + "relative" + ], + "dflt": "group", + "role": "info", + "editType": "calc", + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *relative*, the bars are stacked on top of one another, with negative values below the axis, positive values above With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars." + }, + "barnorm": { + "valType": "enumerated", + "values": [ + "", + "fraction", + "percent" + ], + "dflt": "", + "role": "info", + "editType": "calc", + "description": "Sets the normalization for bar traces on the graph. With *fraction*, the value of each bar is divided by the sum of all values at that location coordinate. *percent* is the same but multiplied by 100 to show percentages." + }, + "bargap": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates." + }, + "bargroupgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate." + } + } + }, + "histogram2d": { + "meta": { + "hrName": "histogram_2d", + "description": "The sample data from which statistics are computed is set in `x` and `y` (where `x` and `y` represent marginal distributions, binning is set in `xbins` and `ybins` in this case) or `z` (where `z` represent the 2D distribution and binning set, binning is set by `x` and `y` in this case). The resulting distribution is visualized as a heatmap." + }, + "categories": [ + "cartesian", + "svg", + "2dMap", + "histogram" + ], + "animatable": false, + "type": "histogram2d", + "attributes": { + "type": "histogram2d", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the sample data to be binned on the x axis.", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the sample data to be binned on the y axis.", + "role": "data" + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the aggregation data.", + "role": "data" + }, + "marker": { + "color": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the aggregation data.", + "role": "data" + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "histnorm": { + "valType": "enumerated", + "values": [ + "", + "percent", + "probability", + "density", + "probability density" + ], + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1)." + }, + "histfunc": { + "valType": "enumerated", + "values": [ + "count", + "sum", + "avg", + "min", + "max" + ], + "role": "style", + "dflt": "count", + "editType": "calc", + "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively." + }, + "nbinsx": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided." + }, + "xbins": { + "start": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. " + }, + "end": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers." + }, + "size": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). " + }, + "editType": "calc", + "role": "object" + }, + "nbinsy": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided." + }, + "ybins": { + "start": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. " + }, + "end": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers." + }, + "size": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). " + }, + "editType": "calc", + "role": "object" + }, + "autobinx": { + "valType": "boolean", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace." + }, + "autobiny": { + "valType": "boolean", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace." + }, + "bingroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately." + }, + "xbingroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup`" + }, + "ybingroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup`" + }, + "xgap": { + "valType": "number", + "dflt": 0, + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the horizontal gap (in pixels) between bricks." + }, + "ygap": { + "valType": "number", + "dflt": 0, + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the vertical gap (in pixels) between bricks." + }, + "zsmooth": { + "valType": "enumerated", + "values": [ + "fast", + "best", + false + ], + "dflt": false, + "role": "style", + "editType": "calc", + "description": "Picks a smoothing algorithm use to smooth `z` data." + }, + "zhoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `z` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "histogram2dcontour": { + "meta": { + "hrName": "histogram_2d_contour", + "description": "The sample data from which statistics are computed is set in `x` and `y` (where `x` and `y` represent marginal distributions, binning is set in `xbins` and `ybins` in this case) or `z` (where `z` represent the 2D distribution and binning set, binning is set by `x` and `y` in this case). The resulting distribution is visualized as a contour plot." + }, + "categories": [ + "cartesian", + "svg", + "2dMap", + "contour", + "histogram", + "showLegend" + ], + "animatable": false, + "type": "histogram2dcontour", + "attributes": { + "type": "histogram2dcontour", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the sample data to be binned on the x axis.", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the sample data to be binned on the y axis.", + "role": "data" + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the aggregation data.", + "role": "data" + }, + "marker": { + "color": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the aggregation data.", + "role": "data" + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "histnorm": { + "valType": "enumerated", + "values": [ + "", + "percent", + "probability", + "density", + "probability density" + ], + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Specifies the type of normalization used for this histogram trace. If **, the span of each bar corresponds to the number of occurrences (i.e. the number of data points lying inside the bins). If *percent* / *probability*, the span of each bar corresponds to the percentage / fraction of occurrences with respect to the total number of sample points (here, the sum of all bin HEIGHTS equals 100% / 1). If *density*, the span of each bar corresponds to the number of occurrences in a bin divided by the size of the bin interval (here, the sum of all bin AREAS equals the total number of sample points). If *probability density*, the area of each bar corresponds to the probability that an event will fall into the corresponding bin (here, the sum of all bin AREAS equals 1)." + }, + "histfunc": { + "valType": "enumerated", + "values": [ + "count", + "sum", + "avg", + "min", + "max" + ], + "role": "style", + "dflt": "count", + "editType": "calc", + "description": "Specifies the binning function used for this histogram trace. If *count*, the histogram values are computed by counting the number of values lying inside each bin. If *sum*, *avg*, *min*, *max*, the histogram values are computed using the sum, the average, the minimum or the maximum of the values lying inside each bin respectively." + }, + "nbinsx": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `xbins.size` is provided." + }, + "xbins": { + "start": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the starting value for the x axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. " + }, + "end": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the end value for the x axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers." + }, + "size": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the size of each x axis bin. Default behavior: If `nbinsx` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsx` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). " + }, + "editType": "calc", + "role": "object" + }, + "nbinsy": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of desired bins. This value will be used in an algorithm that will decide the optimal bin size such that the histogram best visualizes the distribution of the data. Ignored if `ybins.size` is provided." + }, + "ybins": { + "start": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the starting value for the y axis bins. Defaults to the minimum data value, shifted down if necessary to make nice round values and to remove ambiguous bin edges. For example, if most of the data is integers we shift the bin edges 0.5 down, so a `size` of 5 would have a default `start` of -0.5, so it is clear that 0-4 are in the first bin, 5-9 in the second, but continuous data gets a start of 0 and bins [0,5), [5,10) etc. Dates behave similarly, and `start` should be a date string. For category data, `start` is based on the category serial numbers, and defaults to -0.5. " + }, + "end": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the end value for the y axis bins. The last bin may not end exactly at this value, we increment the bin edge by `size` from `start` until we reach or exceed `end`. Defaults to the maximum data value. Like `start`, for dates use a date string, and for category data `end` is based on the category serial numbers." + }, + "size": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the size of each y axis bin. Default behavior: If `nbinsy` is 0 or omitted, we choose a nice round bin size such that the number of bins is about the same as the typical number of samples in each bin. If `nbinsy` is provided, we choose a nice round bin size giving no more than that many bins. For date data, use milliseconds or *M* for months, as in `axis.dtick`. For category data, the number of categories to bin together (always defaults to 1). " + }, + "editType": "calc", + "role": "object" + }, + "autobinx": { + "valType": "boolean", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobinx` is not needed. However, we accept `autobinx: true` or `false` and will update `xbins` accordingly before deleting `autobinx` from the trace." + }, + "autobiny": { + "valType": "boolean", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Obsolete: since v1.42 each bin attribute is auto-determined separately and `autobiny` is not needed. However, we accept `autobiny: true` or `false` and will update `ybins` accordingly before deleting `autobiny` from the trace." + }, + "bingroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set the `xbingroup` and `ybingroup` default prefix For example, setting a `bingroup` of *1* on two histogram2d traces will make them their x-bins and y-bins match separately." + }, + "xbingroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set a group of histogram traces which will have compatible x-bin settings. Using `xbingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible x-bin settings. Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup`" + }, + "ybingroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set a group of histogram traces which will have compatible y-bin settings. Using `ybingroup`, histogram2d and histogram2dcontour traces (on axes of the same axis type) can have compatible y-bin settings. Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup`" + }, + "autocontour": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`." + }, + "ncontours": { + "valType": "integer", + "dflt": 15, + "min": 1, + "role": "style", + "editType": "calc", + "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing." + }, + "contours": { + "type": { + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ], + "dflt": "levels", + "role": "info", + "editType": "calc", + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters." + }, + "start": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the starting contour level value. Must be less than `contours.end`" + }, + "end": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the end contour level value. Must be more than `contours.start`" + }, + "size": { + "valType": "number", + "dflt": null, + "min": 0, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the step between each contour level. Must be positive." + }, + "coloring": { + "valType": "enumerated", + "values": [ + "fill", + "heatmap", + "lines", + "none" + ], + "dflt": "fill", + "role": "style", + "editType": "calc", + "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace." + }, + "showlines": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*." + }, + "showlabels": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines whether to label the contour lines with their values." + }, + "labelfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style" + }, + "editType": "plot", + "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", + "role": "object" + }, + "labelformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the contour label formatting rule using d3 formatting mini-language which is very similar to Python, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "operation": { + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ], + "role": "info", + "dflt": "=", + "editType": "calc", + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms." + }, + "value": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound." + }, + "editType": "calc", + "impliedEdits": { + "autocontour": false, + "role": "object" + }, + "role": "object" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style+colorbars", + "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style+colorbars", + "description": "Sets the contour line width in (in px)", + "dflt": 0.5 + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "smoothing": { + "valType": "number", + "min": 0, + "max": 1.3, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing." + }, + "editType": "plot", + "role": "object" + }, + "zhoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `z` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "contour": { + "meta": { + "description": "The data from which contour lines are computed is set in `z`. Data in `z` must be a {2D array} of numbers. Say that `z` has N rows and M columns, then by default, these N rows correspond to N y coordinates (set in `y` or auto-generated) and the M columns correspond to M x coordinates (set in `x` or auto-generated). By setting `transpose` to *true*, the above behavior is flipped." + }, + "categories": [ + "cartesian", + "svg", + "2dMap", + "contour", + "showLegend" + ], + "animatable": false, + "type": "contour", + "attributes": { + "type": "contour", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the z data.", + "role": "data" + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "impliedEdits": { + "xtype": "array" + }, + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the x coordinate step. See `x0` for more info.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "impliedEdits": { + "ytype": "array" + }, + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the y coordinate step. See `y0` for more info.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "text": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text elements associated with each z value.", + "role": "data" + }, + "hovertext": { + "valType": "data_array", + "editType": "calc", + "description": "Same as `text`.", + "role": "data" + }, + "transpose": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Transposes the z data." + }, + "xtype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided)." + }, + "ytype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)" + }, + "zhoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. See: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in." + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "autocontour": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`." + }, + "ncontours": { + "valType": "integer", + "dflt": 15, + "min": 1, + "role": "style", + "editType": "calc", + "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing." + }, + "contours": { + "type": { + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ], + "dflt": "levels", + "role": "info", + "editType": "calc", + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters." + }, + "start": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the starting contour level value. Must be less than `contours.end`" + }, + "end": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the end contour level value. Must be more than `contours.start`" + }, + "size": { + "valType": "number", + "dflt": null, + "min": 0, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the step between each contour level. Must be positive." + }, + "coloring": { + "valType": "enumerated", + "values": [ + "fill", + "heatmap", + "lines", + "none" + ], + "dflt": "fill", + "role": "style", + "editType": "calc", + "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *heatmap*, a heatmap gradient coloring is applied between each contour level. If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace." + }, + "showlines": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*." + }, + "showlabels": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines whether to label the contour lines with their values." + }, + "labelfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style" + }, + "editType": "plot", + "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", + "role": "object" + }, + "labelformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the contour label formatting rule using d3 formatting mini-language which is very similar to Python, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "operation": { + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ], + "role": "info", + "dflt": "=", + "editType": "calc", + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms." + }, + "value": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound." + }, + "editType": "calc", + "impliedEdits": { + "autocontour": false, + "role": "object" + }, + "role": "object" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style+colorbars", + "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style+colorbars", + "description": "Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "smoothing": { + "valType": "number", + "min": 0, + "max": 1.3, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing." + }, + "editType": "plot", + "role": "object" + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "scatterternary": { + "meta": { + "hrName": "scatter_ternary", + "description": "Provides similar functionality to the *scatter* type but on a ternary phase diagram. The data is provided by at least two arrays out of `a`, `b`, `c` triplets." + }, + "categories": [ + "ternary", + "symbols", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "scatterternary", + "attributes": { + "type": "scatterternary", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "a": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "role": "data" + }, + "b": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "role": "data" + }, + "c": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "role": "data" + }, + "sum": { + "valType": "number", + "role": "info", + "dflt": 0, + "min": 0, + "editType": "calc", + "description": "The number each triplet should sum to, if only two of `a`, `b`, and `c` are provided. This overrides `ternary.sum` to normalize this specific trace, but does not affect the values displayed on the axes. 0 (or missing) means to use ternary.sum" + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `a`, `b`, `c` and `text`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c). To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "shape": { + "valType": "enumerated", + "values": [ + "linear", + "spline" + ], + "dflt": "linear", + "role": "style", + "editType": "plot", + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes." + }, + "smoothing": { + "valType": "number", + "min": 0, + "max": 1.3, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape)." + }, + "editType": "calc", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "cliponaxis": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*." + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ], + "role": "style", + "editType": "calc", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "marker": { + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity." + }, + "maxdisplayed": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "gradient": { + "type": { + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ], + "arrayOk": true, + "dflt": "none", + "role": "style", + "editType": "calc", + "description": "Sets the type of gradient used to fill the markers" + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical." + }, + "editType": "calc", + "role": "object", + "typesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for type .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the text font.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "a", + "b", + "c", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoveron": { + "valType": "flaglist", + "flags": [ + "points", + "fills" + ], + "role": "info", + "editType": "style", + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "subplot": { + "valType": "subplotid", + "role": "info", + "dflt": "ternary", + "editType": "calc", + "description": "Sets a reference between this trace's data coordinates and a ternary subplot. If *ternary* (the default value), the data refer to `layout.ternary`. If *ternary2*, the data refer to `layout.ternary2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "asrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for a .", + "editType": "none" + }, + "bsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for b .", + "editType": "none" + }, + "csrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for c .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "violin": { + "meta": { + "description": "In vertical (horizontal) violin plots, statistics are computed using `y` (`x`) values. By supplying an `x` (`y`) array, one violin per distinct x (y) value is drawn If no `x` (`y`) {array} is provided, a single violin is drawn. That violin position is then positioned with with `name` or with `x0` (`y0`) if provided." + }, + "categories": [ + "cartesian", + "svg", + "symbols", + "oriented", + "box-violin", + "showLegend", + "violinLayout", + "zoomScale" + ], + "animatable": false, + "type": "violin", + "attributes": { + "type": "violin", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y sample data or coordinates. See overview for more info.", + "role": "data" + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x sample data or coordinates. See overview for more info.", + "role": "data" + }, + "x0": { + "valType": "any", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinate of the box. See overview for more info." + }, + "y0": { + "valType": "any", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinate of the box. See overview for more info." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the trace name. The trace name appear as the legend item and on hover. For violin traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical. Note that the trace name is also used as a default value for attribute `scalegroup` (please see its description for details)." + }, + "orientation": { + "valType": "enumerated", + "values": [ + "v", + "h" + ], + "role": "style", + "editType": "calc+clearAxisTypes", + "description": "Sets the orientation of the violin(s). If *v* (*h*), the distribution is visualized along the vertical (horizontal)." + }, + "bandwidth": { + "valType": "number", + "min": 0, + "role": "info", + "editType": "calc", + "description": "Sets the bandwidth used to compute the kernel density estimate. By default, the bandwidth is determined by Silverman's rule of thumb." + }, + "scalegroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "If there are multiple violins that should be sized according to to some metric (see `scalemode`), link them by providing a non-empty group id here shared by every trace in the same group. If a violin's `width` is undefined, `scalegroup` will default to the trace's name. In this case, violins with the same names will be linked together" + }, + "scalemode": { + "valType": "enumerated", + "values": [ + "width", + "count" + ], + "dflt": "width", + "role": "info", + "editType": "calc", + "description": "Sets the metric by which the width of each violin is determined.*width* means each violin has the same (max) width*count* means the violins are scaled by the number of sample points makingup each violin." + }, + "spanmode": { + "valType": "enumerated", + "values": [ + "soft", + "hard", + "manual" + ], + "dflt": "soft", + "role": "info", + "editType": "calc", + "description": "Sets the method by which the span in data space where the density function will be computed. *soft* means the span goes from the sample's minimum value minus two bandwidths to the sample's maximum value plus two bandwidths. *hard* means the span goes from the sample's minimum to its maximum value. For custom span settings, use mode *manual* and fill in the `span` attribute." + }, + "span": { + "valType": "info_array", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "role": "info", + "editType": "calc", + "description": "Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the color of line bounding the violin(s)." + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "editType": "style", + "description": "Sets the width (in px) of line bounding the violin(s)." + }, + "editType": "plot", + "role": "object" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "points": { + "valType": "enumerated", + "values": [ + "all", + "outliers", + "suspectedoutliers", + false + ], + "dflt": "outliers", + "role": "style", + "editType": "calc", + "description": "If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the violins are shown with no sample points" + }, + "jitter": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the violins." + }, + "pointpos": { + "valType": "number", + "min": -2, + "max": 2, + "role": "style", + "editType": "calc", + "description": "Sets the position of the sample points in relation to the violins. If *0*, the sample points are places over the center of the violins. Positive (negative) values correspond to positions to the right (left) for vertical violins and above (below) for horizontal violins." + }, + "width": { + "valType": "number", + "min": 0, + "role": "info", + "dflt": 0, + "editType": "calc", + "description": "Sets the width of the violin in data coordinates. If *0* (default value) the width is automatically selected based on the positions of other violin traces in the same subplot." + }, + "marker": { + "outliercolor": { + "valType": "color", + "dflt": "rgba(0, 0, 0, 0)", + "role": "style", + "editType": "style", + "description": "Sets the color of the outlier sample points." + }, + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": false, + "role": "style", + "editType": "plot", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity.", + "dflt": 1 + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444" + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0 + }, + "outliercolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the border line color of the outlier sample points. Defaults to marker.color" + }, + "outlierwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "style", + "description": "Sets the border line width (in px) of the outlier sample points." + }, + "editType": "style", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Same as `text`." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "box": { + "visible": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "plot", + "description": "Determines if an miniature box plot is drawn inside the violins. " + }, + "width": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.25, + "role": "info", + "editType": "plot", + "description": "Sets the width of the inner box plots relative to the violins' width. For example, with 1, the inner box plots are as wide as the violins." + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the inner box plot fill color." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the inner box plot bounding line color." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the inner box plot bounding line width." + }, + "editType": "style", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "meanline": { + "visible": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "plot", + "description": "Determines if a line corresponding to the sample's mean is shown inside the violins. If `box.visible` is turned on, the mean line is drawn inside the inner box. Otherwise, the mean line is drawn from one side of the violin to other." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the mean line color." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the mean line width." + }, + "editType": "plot", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "both", + "positive", + "negative" + ], + "dflt": "both", + "role": "info", + "editType": "calc", + "description": "Determines on which side of the position value the density function making up one half of a violin is plotted. Useful when comparing two violin traces under *overlay* mode, where one trace has `side` set to *positive* and the other to *negative*." + }, + "offsetgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up." + }, + "alignmentgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "hoveron": { + "valType": "flaglist", + "flags": [ + "violins", + "points", + "kde" + ], + "dflt": "violins+points+kde", + "extras": [ + "all" + ], + "role": "info", + "editType": "style", + "description": "Do the hover effects highlight individual violins or sample points or the kernel density estimate or any combination of them?" + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "layoutAttributes": { + "violinmode": { + "valType": "enumerated", + "values": [ + "group", + "overlay" + ], + "dflt": "overlay", + "role": "info", + "editType": "calc", + "description": "Determines how violins at the same location coordinate are displayed on the graph. If *group*, the violins are plotted next to one another centered around the shared location. If *overlay*, the violins are plotted over one another, you might need to set *opacity* to see them multiple violins. Has no effect on traces that have *width* set." + }, + "violingap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.3, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between violins of adjacent location coordinates. Has no effect on traces that have *width* set." + }, + "violingroupgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.3, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between violins of the same location coordinate. Has no effect on traces that have *width* set." + } + } + }, + "funnel": { + "meta": { + "description": "Visualize stages in a process using length-encoded bars. This trace can be used to show data in either a part-to-whole representation wherein each item appears in a single stage, or in a \"drop-off\" representation wherein each item appears in each stage it traversed. See also the \"funnelarea\" trace type for a different approach to visualizing funnel data." + }, + "categories": [ + "bar-like", + "cartesian", + "svg", + "oriented", + "showLegend", + "zoomScale" + ], + "animatable": false, + "type": "funnel", + "attributes": { + "type": "funnel", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step." + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the x coordinate step. See `x0` for more info." + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step." + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the y coordinate step. See `y0` for more info." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `percentInitial`, `percentPrevious` and `percentTotal`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "name", + "x", + "y", + "text", + "percent initial", + "percent previous", + "percent total" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "textinfo": { + "valType": "flaglist", + "flags": [ + "label", + "text", + "percent initial", + "percent previous", + "percent total", + "value" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "plot", + "arrayOk": false, + "description": "Determines which trace information appear on the graph. In the case of having multiple funnels, percentages & totals are computed separately (per trace)." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `percentInitial`, `percentPrevious`, `percentTotal`, `label` and `value`.", + "arrayOk": true + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "textposition": { + "valType": "enumerated", + "role": "info", + "values": [ + "inside", + "outside", + "auto", + "none" + ], + "dflt": "auto", + "arrayOk": true, + "editType": "calc", + "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside." + }, + "insidetextanchor": { + "valType": "enumerated", + "values": [ + "end", + "middle", + "start" + ], + "dflt": "middle", + "role": "info", + "editType": "plot", + "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode." + }, + "textangle": { + "valType": "angle", + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "insidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text` lying inside the bar.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "outsidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text` lying outside the bar.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "constraintext": { + "valType": "enumerated", + "values": [ + "inside", + "outside", + "both", + "none" + ], + "role": "info", + "dflt": "both", + "editType": "calc", + "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself." + }, + "cliponaxis": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*." + }, + "orientation": { + "valType": "enumerated", + "role": "info", + "values": [ + "v", + "h" + ], + "editType": "calc+clearAxisTypes", + "description": "Sets the orientation of the funnels. With *v* (*h*), the value of the each bar spans along the vertical (horizontal). By default funnels are tend to be oriented horizontally; unless only *y* array is presented or orientation is set to *v*. Also regarding graphs including only 'horizontal' funnels, *autorange* on the *y-axis* are set to *reversed*." + }, + "offset": { + "valType": "number", + "dflt": null, + "arrayOk": false, + "role": "info", + "editType": "calc", + "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead." + }, + "width": { + "valType": "number", + "dflt": null, + "min": 0, + "arrayOk": false, + "role": "info", + "editType": "calc", + "description": "Sets the bar width (in position axis units)." + }, + "marker": { + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0 + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "arrayOk": true, + "dflt": 1, + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the opacity of the bars." + }, + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "connector": { + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the line color.", + "dflt": "#444" + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "editType": "style", + "role": "object" + }, + "visible": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines if connector regions and lines are drawn." + }, + "editType": "plot", + "role": "object" + }, + "offsetgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up." + }, + "alignmentgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + } + }, + "layoutAttributes": { + "funnelmode": { + "valType": "enumerated", + "values": [ + "stack", + "group", + "overlay" + ], + "dflt": "stack", + "role": "info", + "editType": "calc", + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars." + }, + "funnelgap": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates." + }, + "funnelgroupgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate." + } + } + }, + "waterfall": { + "meta": { + "description": "Draws waterfall trace which is useful graph to displays the contribution of various elements (either positive or negative) in a bar chart. The data visualized by the span of the bars is set in `y` if `orientation` is set th *v* (the default) and the labels are set in `x`. By setting `orientation` to *h*, the roles are interchanged." + }, + "categories": [ + "bar-like", + "cartesian", + "svg", + "oriented", + "showLegend", + "zoomScale" + ], + "animatable": false, + "type": "waterfall", + "attributes": { + "type": "waterfall", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "measure": { + "valType": "data_array", + "dflt": [], + "role": "data", + "editType": "calc", + "description": "An array containing types of values. By default the values are considered as 'relative'. However; it is possible to use 'total' to compute the sums. Also 'absolute' could be applied to reset the computed total or to declare an initial value where needed." + }, + "base": { + "valType": "number", + "dflt": null, + "arrayOk": false, + "role": "info", + "editType": "calc", + "description": "Sets where the bar base is drawn (in position axis units)." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step." + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the x coordinate step. See `x0` for more info." + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step." + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the y coordinate step. See `y0` for more info." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `initial`, `delta` and `final`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "name", + "x", + "y", + "text", + "initial", + "delta", + "final" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "textinfo": { + "valType": "flaglist", + "flags": [ + "label", + "text", + "initial", + "delta", + "final" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "plot", + "arrayOk": false, + "description": "Determines which trace information appear on the graph. In the case of having multiple waterfalls, totals are computed separately (per trace)." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `initial`, `delta`, `final` and `label`.", + "arrayOk": true + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "textposition": { + "valType": "enumerated", + "role": "info", + "values": [ + "inside", + "outside", + "auto", + "none" + ], + "dflt": "none", + "arrayOk": true, + "editType": "calc", + "description": "Specifies the location of the `text`. *inside* positions `text` inside, next to the bar end (rotated and scaled if needed). *outside* positions `text` outside, next to the bar end (scaled if needed), unless there is another bar stacked on this one, then the text gets pushed inside. *auto* tries to position `text` inside the bar, but if the bar is too small and no bar is stacked on this one the text is moved outside." + }, + "insidetextanchor": { + "valType": "enumerated", + "values": [ + "end", + "middle", + "start" + ], + "dflt": "end", + "role": "info", + "editType": "plot", + "description": "Determines if texts are kept at center or start/end points in `textposition` *inside* mode." + }, + "textangle": { + "valType": "angle", + "dflt": "auto", + "role": "info", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the bar. For example, a `tickangle` of -90 draws the tick labels vertically. With *auto* the texts may automatically be rotated to fit with the maximum size in bars." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "insidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text` lying inside the bar.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "outsidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used for `text` lying outside the bar.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "constraintext": { + "valType": "enumerated", + "values": [ + "inside", + "outside", + "both", + "none" + ], + "role": "info", + "dflt": "both", + "editType": "calc", + "description": "Constrain the size of text inside or outside a bar to be no larger than the bar itself." + }, + "cliponaxis": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines whether the text nodes are clipped about the subplot axes. To show the text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*." + }, + "orientation": { + "valType": "enumerated", + "role": "info", + "values": [ + "v", + "h" + ], + "editType": "calc+clearAxisTypes", + "description": "Sets the orientation of the bars. With *v* (*h*), the value of the each bar spans along the vertical (horizontal)." + }, + "offset": { + "valType": "number", + "dflt": null, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Shifts the position where the bar is drawn (in position axis units). In *group* barmode, traces that set *offset* will be excluded and drawn in *overlay* mode instead." + }, + "width": { + "valType": "number", + "dflt": null, + "min": 0, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Sets the bar width (in position axis units)." + }, + "increasing": { + "marker": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the marker color of all increasing values." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the line color of all increasing values." + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the line width of all increasing values.", + "dflt": 0 + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "decreasing": { + "marker": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the marker color of all decreasing values." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the line color of all decreasing values." + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the line width of all decreasing values.", + "dflt": 0 + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "totals": { + "marker": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the marker color of all intermediate sums and total values." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the line color of all intermediate sums and total values." + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": false, + "role": "style", + "editType": "style", + "description": "Sets the line width of all intermediate sums and total values.", + "dflt": 0 + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "connector": { + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the line color.", + "dflt": "#444" + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "plot", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "editType": "plot", + "role": "object" + }, + "mode": { + "valType": "enumerated", + "values": [ + "spanning", + "between" + ], + "dflt": "between", + "role": "info", + "editType": "plot", + "description": "Sets the shape of connector lines." + }, + "visible": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines if connector lines are drawn. " + }, + "editType": "plot", + "role": "object" + }, + "offsetgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same offsetgroup where bars of the same position coordinate will line up." + }, + "alignmentgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Set several traces linked to the same position axis or matching axes to the same alignmentgroup. This controls whether bars compute their positional range dependently or independently." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "measuresrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for measure .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "offsetsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for offset .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "layoutAttributes": { + "waterfallmode": { + "valType": "enumerated", + "values": [ + "group", + "overlay" + ], + "dflt": "group", + "role": "info", + "editType": "calc", + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *group*, the bars are plotted next to one another centered around the shared location. With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars." + }, + "waterfallgap": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of adjacent location coordinates." + }, + "waterfallgroupgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between bars of the same location coordinate." + } + } + }, + "pie": { + "meta": { + "description": "A data visualized by the sectors of the pie is set in `values`. The sector labels are set in `labels`. The sector colors are set in `marker.colors`" + }, + "categories": [ + "pie-like", + "pie", + "showLegend" + ], + "animatable": false, + "type": "pie", + "attributes": { + "type": "pie", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "labels": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", + "role": "data" + }, + "label0": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "calc", + "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step." + }, + "dlabel": { + "valType": "number", + "role": "info", + "dflt": 1, + "editType": "calc", + "description": "Sets the label step. See `label0` for more info." + }, + "values": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values of the sectors. If omitted, we count occurrences of each label.", + "role": "data" + }, + "marker": { + "colors": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors.", + "role": "data" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "arrayOk": true, + "editType": "style", + "description": "Sets the color of the line enclosing each sector." + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "arrayOk": true, + "editType": "style", + "description": "Sets the width (in px) of the line enclosing each sector." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object", + "colorssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for colors .", + "editType": "none" + } + }, + "text": { + "valType": "data_array", + "editType": "plot", + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "role": "data" + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "scalegroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "If there are multiple pie charts that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group." + }, + "textinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "percent" + ], + "extras": [ + "none" + ], + "editType": "calc", + "description": "Determines which trace information appear on the graph." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "percent", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `percent` and `text`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `percent` and `text`.", + "arrayOk": true + }, + "textposition": { + "valType": "enumerated", + "role": "info", + "values": [ + "inside", + "outside", + "auto", + "none" + ], + "dflt": "auto", + "arrayOk": true, + "editType": "plot", + "description": "Specifies the location of the `textinfo`." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "insidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo` lying inside the sector.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "outsidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo` lying outside the sector.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "title": { + "text": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "plot", + "description": "Sets the title of the chart. If it is empty, no title is displayed. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `title`. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "position": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle center", + "bottom left", + "bottom center", + "bottom right" + ], + "role": "info", + "editType": "plot", + "description": "Specifies the location of the `title`. Note that the title's position used to be set by the now deprecated `titleposition` attribute." + }, + "editType": "plot", + "role": "object" + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this pie trace (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this pie trace (in plot fraction)." + }, + "editType": "calc", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this row in the grid for this pie trace ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this column in the grid for this pie trace ." + }, + "role": "object" + }, + "hole": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0, + "editType": "calc", + "description": "Sets the fraction of the radius to cut out of the pie. Use this to make a donut chart." + }, + "sort": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not the sectors are reordered from largest to smallest." + }, + "direction": { + "valType": "enumerated", + "values": [ + "clockwise", + "counterclockwise" + ], + "role": "style", + "dflt": "counterclockwise", + "editType": "calc", + "description": "Specifies the direction at which succeeding sectors follow one another." + }, + "rotation": { + "valType": "number", + "role": "style", + "min": -360, + "max": 360, + "dflt": 0, + "editType": "calc", + "description": "Instead of the first slice starting at 12 o'clock, rotate to some other angle." + }, + "pull": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0, + "arrayOk": true, + "editType": "calc", + "description": "Sets the fraction of larger radius to pull the sectors out from the center. This can be a constant to pull all slices apart from each other equally or an array to highlight one or more slices." + }, + "_deprecated": { + "title": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "calc", + "description": "Deprecated in favor of `title.text`. Note that value of `title` is no longer a simple *string* but a set of sub-attributes." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Deprecated in favor of `title.font`." + }, + "titleposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle center", + "bottom left", + "bottom center", + "bottom right" + ], + "role": "info", + "editType": "calc", + "description": "Deprecated in favor of `title.position`." + } + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "labelssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for labels .", + "editType": "none" + }, + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "pullsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for pull .", + "editType": "none" + } + }, + "layoutAttributes": { + "hiddenlabels": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts" + }, + "piecolorway": { + "valType": "colorlist", + "role": "style", + "editType": "calc", + "description": "Sets the default pie slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendpiecolors`." + }, + "extendpiecolors": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "If `true`, the pie slice colors (whether given by `piecolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended." + }, + "hiddenlabelssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hiddenlabels .", + "editType": "none" + } + } + }, + "sunburst": { + "meta": { + "description": "Visualize hierarchal data spanning outward radially from root to leaves. The sunburst sectors are determined by the entries in *labels* or *ids* and in *parents*." + }, + "categories": [], + "animatable": true, + "type": "sunburst", + "attributes": { + "type": "sunburst", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "labels": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the labels of each of the sectors.", + "role": "data" + }, + "parents": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", + "role": "data" + }, + "values": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", + "role": "data" + }, + "branchvalues": { + "valType": "enumerated", + "values": [ + "remainder", + "total" + ], + "dflt": "remainder", + "editType": "calc", + "role": "info", + "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves." + }, + "count": { + "valType": "flaglist", + "flags": [ + "branches", + "leaves" + ], + "dflt": "leaves", + "editType": "calc", + "role": "info", + "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0." + }, + "level": { + "valType": "any", + "editType": "plot", + "anim": true, + "role": "info", + "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`." + }, + "maxdepth": { + "valType": "integer", + "editType": "plot", + "role": "info", + "dflt": -1, + "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy." + }, + "marker": { + "colors": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", + "role": "data" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "dflt": null, + "arrayOk": true, + "editType": "style", + "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value." + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "arrayOk": true, + "editType": "style", + "description": "Sets the width (in px) of the line enclosing each sector." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "editType": "calc", + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colorsis set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if colorsis set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colorsis set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if colorsis set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colorsis set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "colorssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for colors .", + "editType": "none" + } + }, + "leaf": { + "opacity": { + "valType": "number", + "editType": "style", + "role": "style", + "min": 0, + "max": 1, + "description": "Sets the opacity of the leaves. With colorscale it is defaulted to 1; otherwise it is defaulted to 0.7" + }, + "editType": "plot", + "role": "object" + }, + "text": { + "valType": "data_array", + "editType": "plot", + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "role": "data" + }, + "textinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "extras": [ + "none" + ], + "editType": "plot", + "description": "Determines which trace information appear on the graph." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "name", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "label+text+value+name", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "insidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo` lying inside the sector.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "outsidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo` lying outside the sector.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this sunburst trace (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this sunburst trace (in plot fraction)." + }, + "editType": "calc", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this row in the grid for this sunburst trace ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this column in the grid for this sunburst trace ." + }, + "role": "object" + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "labelssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for labels .", + "editType": "none" + }, + "parentssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for parents .", + "editType": "none" + }, + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "layoutAttributes": { + "sunburstcolorway": { + "valType": "colorlist", + "role": "style", + "editType": "calc", + "description": "Sets the default sunburst slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendsunburstcolors`." + }, + "extendsunburstcolors": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "If `true`, the sunburst slice colors (whether given by `sunburstcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended." + } + } + }, + "treemap": { + "meta": { + "description": "Visualize hierarchal data from leaves (and/or outer branches) towards root with rectangles. The treemap sectors are determined by the entries in *labels* or *ids* and in *parents*." + }, + "categories": [], + "animatable": true, + "type": "treemap", + "attributes": { + "type": "treemap", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "labels": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the labels of each of the sectors.", + "role": "data" + }, + "parents": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the parent sectors for each of the sectors. Empty string items '' are understood to reference the root node in the hierarchy. If `ids` is filled, `parents` items are understood to be \"ids\" themselves. When `ids` is not set, plotly attempts to find matching items in `labels`, but beware they must be unique.", + "role": "data" + }, + "values": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values associated with each of the sectors. Use with `branchvalues` to determine how the values are summed.", + "role": "data" + }, + "branchvalues": { + "valType": "enumerated", + "values": [ + "remainder", + "total" + ], + "dflt": "remainder", + "editType": "calc", + "role": "info", + "description": "Determines how the items in `values` are summed. When set to *total*, items in `values` are taken to be value of all its descendants. When set to *remainder*, items in `values` corresponding to the root and the branches sectors are taken to be the extra part not part of the sum of the values at their leaves." + }, + "count": { + "valType": "flaglist", + "flags": [ + "branches", + "leaves" + ], + "dflt": "leaves", + "editType": "calc", + "role": "info", + "description": "Determines default for `values` when it is not provided, by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0." + }, + "level": { + "valType": "any", + "editType": "plot", + "anim": true, + "role": "info", + "description": "Sets the level from which this trace hierarchy is rendered. Set `level` to `''` to start from the root node in the hierarchy. Must be an \"id\" if `ids` is filled in, otherwise plotly attempts to find a matching item in `labels`." + }, + "maxdepth": { + "valType": "integer", + "editType": "plot", + "role": "info", + "dflt": -1, + "description": "Sets the number of rendered sectors from any given `level`. Set `maxdepth` to *-1* to render all the levels in the hierarchy." + }, + "tiling": { + "packing": { + "valType": "enumerated", + "values": [ + "squarify", + "binary", + "dice", + "slice", + "slice-dice", + "dice-slice" + ], + "dflt": "squarify", + "role": "info", + "editType": "plot", + "description": "Determines d3 treemap solver. For more info please refer to https://github.com/d3/d3-hierarchy#treemap-tiling" + }, + "squarifyratio": { + "valType": "number", + "role": "info", + "min": 1, + "dflt": 1, + "editType": "plot", + "description": "When using *squarify* `packing` algorithm, according to https://github.com/d3/d3-hierarchy/blob/master/README.md#squarify_ratio this option specifies the desired aspect ratio of the generated rectangles. The ratio must be specified as a number greater than or equal to one. Note that the orientation of the generated rectangles (tall or wide) is not implied by the ratio; for example, a ratio of two will attempt to produce a mixture of rectangles whose width:height ratio is either 2:1 or 1:2. When using *squarify*, unlike d3 which uses the Golden Ratio i.e. 1.618034, Plotly applies 1 to increase squares in treemap layouts." + }, + "flip": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y" + ], + "dflt": "", + "editType": "plot", + "description": "Determines if the positions obtained from solver are flipped on each axis." + }, + "pad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 3, + "editType": "plot", + "description": "Sets the inner padding (in px)." + }, + "editType": "calc", + "role": "object" + }, + "marker": { + "pad": { + "t": { + "valType": "number", + "role": "style", + "min": 0, + "editType": "plot", + "description": "Sets the padding form the top (in px)." + }, + "l": { + "valType": "number", + "role": "style", + "min": 0, + "editType": "plot", + "description": "Sets the padding form the left (in px)." + }, + "r": { + "valType": "number", + "role": "style", + "min": 0, + "editType": "plot", + "description": "Sets the padding form the right (in px)." + }, + "b": { + "valType": "number", + "role": "style", + "min": 0, + "editType": "plot", + "description": "Sets the padding form the bottom (in px)." + }, + "editType": "calc", + "role": "object" + }, + "colors": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the color of each sector of this trace. If not specified, the default trace color set is used to pick the sector colors.", + "role": "data" + }, + "depthfade": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "editType": "style", + "role": "style", + "description": "Determines if the sector colors are faded towards the background from the leaves up to the headers. This option is unavailable when a `colorscale` is present, defaults to false when `marker.colors` is set, but otherwise defaults to true. When set to *reversed*, the fading direction is inverted, that is the top elements within hierarchy are drawn with fully saturated colors while the leaves are faded towards the background color." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "dflt": null, + "arrayOk": true, + "editType": "style", + "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value." + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "arrayOk": true, + "editType": "style", + "description": "Sets the width (in px) of the line enclosing each sector." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "editType": "calc", + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here colors) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if colorsis set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if colorsis set to a numerical array. Value should have the same units as colors. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if colorsis set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if colorsis set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if colorsis set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if colorsis set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "colorssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for colors .", + "editType": "none" + } + }, + "pathbar": { + "visible": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Determines if the path bar is drawn i.e. outside the trace `domain` and with one pixel gap." + }, + "side": { + "valType": "enumerated", + "values": [ + "top", + "bottom" + ], + "dflt": "top", + "role": "info", + "editType": "plot", + "description": "Determines on which side of the the treemap the `pathbar` should be presented." + }, + "edgeshape": { + "valType": "enumerated", + "values": [ + ">", + "<", + "|", + "/", + "\\" + ], + "dflt": ">", + "role": "style", + "editType": "plot", + "description": "Determines which shape is used for edges between `barpath` labels." + }, + "thickness": { + "valType": "number", + "min": 12, + "role": "info", + "editType": "plot", + "description": "Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used with 3 pixles extra padding on each side." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used inside `pathbar`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object" + }, + "text": { + "valType": "data_array", + "editType": "plot", + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "role": "data" + }, + "textinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "extras": [ + "none" + ], + "editType": "plot", + "description": "Determines which trace information appear on the graph." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry`, `percentParent`, `label` and `value`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "name", + "current path", + "percent root", + "percent entry", + "percent parent" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "label+text+value+name", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `currentPath`, `root`, `entry`, `percentRoot`, `percentEntry` and `percentParent`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "insidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo` lying inside the sector.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "outsidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo` lying outside the sector.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "top left", + "role": "style", + "editType": "plot", + "description": "Sets the positions of the `text` elements." + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this treemap trace (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this treemap trace (in plot fraction)." + }, + "editType": "calc", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this row in the grid for this treemap trace ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this column in the grid for this treemap trace ." + }, + "role": "object" + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "labelssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for labels .", + "editType": "none" + }, + "parentssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for parents .", + "editType": "none" + }, + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "layoutAttributes": { + "treemapcolorway": { + "valType": "colorlist", + "role": "style", + "editType": "calc", + "description": "Sets the default treemap slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendtreemapcolors`." + }, + "extendtreemapcolors": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "If `true`, the treemap slice colors (whether given by `treemapcolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended." + } + } + }, + "funnelarea": { + "meta": { + "description": "Visualize stages in a process using area-encoded trapezoids. This trace can be used to show data in a part-to-whole representation similar to a \"pie\" trace, wherein each item appears in a single stage. See also the \"funnel\" trace type for a different approach to visualizing funnel data." + }, + "categories": [ + "pie-like", + "funnelarea", + "showLegend" + ], + "animatable": false, + "type": "funnelarea", + "attributes": { + "type": "funnelarea", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "labels": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", + "role": "data" + }, + "label0": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "calc", + "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step." + }, + "dlabel": { + "valType": "number", + "role": "info", + "dflt": 1, + "editType": "calc", + "description": "Sets the label step. See `label0` for more info." + }, + "values": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values of the sectors. If omitted, we count occurrences of each label.", + "role": "data" + }, + "marker": { + "colors": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the color of each sector. If not specified, the default trace color set is used to pick the sector colors.", + "role": "data" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "dflt": null, + "arrayOk": true, + "editType": "style", + "description": "Sets the color of the line enclosing each sector. Defaults to the `paper_bgcolor` value." + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "arrayOk": true, + "editType": "style", + "description": "Sets the width (in px) of the line enclosing each sector." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object", + "colorssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for colors .", + "editType": "none" + } + }, + "text": { + "valType": "data_array", + "editType": "plot", + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will be seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "role": "data" + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "scalegroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "If there are multiple funnelareas that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group." + }, + "textinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "percent" + ], + "extras": [ + "none" + ], + "editType": "calc", + "description": "Determines which trace information appear on the graph." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `text` and `percent`.", + "arrayOk": true + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "label", + "text", + "value", + "percent", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `label`, `color`, `value`, `text` and `percent`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "textposition": { + "valType": "enumerated", + "role": "info", + "values": [ + "inside", + "none" + ], + "dflt": "inside", + "arrayOk": true, + "editType": "plot", + "description": "Specifies the location of the `textinfo`." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo`.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "insidetextfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `textinfo` lying inside the sector.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "title": { + "text": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "plot", + "description": "Sets the title of the chart. If it is empty, no title is displayed. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot", + "arrayOk": true + }, + "editType": "plot", + "description": "Sets the font used for `title`. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "position": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right" + ], + "role": "info", + "editType": "plot", + "description": "Specifies the location of the `title`. Note that the title's position used to be set by the now deprecated `titleposition` attribute.", + "dflt": "top center" + }, + "editType": "plot", + "role": "object" + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this funnelarea trace (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this funnelarea trace (in plot fraction)." + }, + "editType": "calc", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this row in the grid for this funnelarea trace ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this column in the grid for this funnelarea trace ." + }, + "role": "object" + }, + "aspectratio": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 1, + "editType": "plot", + "description": "Sets the ratio between height and width" + }, + "baseratio": { + "valType": "number", + "role": "info", + "min": 0, + "max": 1, + "dflt": 0.333, + "editType": "plot", + "description": "Sets the ratio between bottom length and maximum top length." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "labelssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for labels .", + "editType": "none" + }, + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + } + }, + "layoutAttributes": { + "hiddenlabels": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "hiddenlabels is the funnelarea & pie chart analog of visible:'legendonly' but it can contain many labels, and can simultaneously hide slices from several pies/funnelarea charts" + }, + "funnelareacolorway": { + "valType": "colorlist", + "role": "style", + "editType": "calc", + "description": "Sets the default funnelarea slice colors. Defaults to the main `colorway` used for trace colors. If you specify a new list here it can still be extended with lighter and darker colors, see `extendfunnelareacolors`." + }, + "extendfunnelareacolors": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "If `true`, the funnelarea slice colors (whether given by `funnelareacolorway` or inherited from `colorway`) will be extended to three times its original length by first repeating every color 20% lighter then each color 20% darker. This is intended to reduce the likelihood of reusing the same color when you have many slices, but you can set `false` to disable. Colors provided in the trace, using `marker.colors`, are never extended." + }, + "hiddenlabelssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hiddenlabels .", + "editType": "none" + } + } + }, + "scatter3d": { + "meta": { + "hrName": "scatter_3d", + "description": "The data visualized as scatter point or lines in 3D dimension is set in `x`, `y`, `z`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` Projections are achieved via `projection`. Surface fills are achieved via `surfaceaxis`." + }, + "categories": [ + "gl3d", + "symbols", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "scatter3d", + "attributes": { + "type": "scatter3d", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "role": "data" + }, + "z": { + "valType": "data_array", + "description": "Sets the z coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "lines+markers" + }, + "surfaceaxis": { + "valType": "enumerated", + "role": "info", + "values": [ + -1, + 0, + 1, + 2 + ], + "dflt": -1, + "description": "If *-1*, the scatter points are not fill with a surface If *0*, *1*, *2*, the scatter points are filled with a Delaunay surface about the x, y, z respectively.", + "editType": "calc" + }, + "surfacecolor": { + "valType": "color", + "role": "style", + "description": "Sets the surface fill color.", + "editType": "calc" + }, + "projection": { + "x": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not projections are shown along the x axis.", + "editType": "calc" + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the projection color.", + "editType": "calc" + }, + "scale": { + "valType": "number", + "role": "style", + "min": 0, + "max": 10, + "dflt": 0.6666666666666666, + "description": "Sets the scale factor determining the size of the projection marker points.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "y": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not projections are shown along the y axis.", + "editType": "calc" + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the projection color.", + "editType": "calc" + }, + "scale": { + "valType": "number", + "role": "style", + "min": 0, + "max": 10, + "dflt": 0.6666666666666666, + "description": "Sets the scale factor determining the size of the projection marker points.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "z": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not projections are shown along the z axis.", + "editType": "calc" + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the projection color.", + "editType": "calc" + }, + "scale": { + "valType": "number", + "role": "style", + "min": 0, + "max": 10, + "dflt": 0.6666666666666666, + "description": "Sets the scale factor determining the size of the projection marker points.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "enumerated", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "description": "Sets the dash style of the lines.", + "editType": "calc" + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets thelinecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color`is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `line.color`is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "marker": { + "symbol": { + "valType": "enumerated", + "values": [ + "circle", + "circle-open", + "square", + "square-open", + "diamond", + "diamond-open", + "cross", + "x" + ], + "role": "style", + "dflt": "circle", + "arrayOk": true, + "description": "Sets the marker symbol type.", + "editType": "calc" + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 8, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity. Note that the marker opacity for scatter3d traces must be a scalar value for performance reasons. To set a blending opacity value (i.e. which is not transparent), set *marker.color* to an rgba color and use its alpha channel." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "editType": "calc", + "role": "object", + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "top center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": false + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + } + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "error_x": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "copy_zstyle": { + "valType": "boolean", + "role": "style", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "calc", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "error_y": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "copy_zstyle": { + "valType": "boolean", + "role": "style", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "calc", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "error_z": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "calc", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "zcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `z` date data." + }, + "scene": { + "valType": "subplotid", + "role": "info", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "surface": { + "meta": { + "description": "The data the describes the coordinates of the surface is set in `z`. Data in `z` should be a {2D array}. Coordinates in `x` and `y` can either be 1D {arrays} or {2D arrays} (e.g. to graph parametric surfaces). If not provided in `x` and `y`, the x and y coordinates are assumed to be linear starting at 0 with a unit step. The color scale corresponds to the `z` values by default. For custom color scales, use `surfacecolor` which should be a {2D array}, where its bounds can be controlled using `cmin` and `cmax`." + }, + "categories": [ + "gl3d", + "2dMap", + "noOpacity" + ], + "animatable": false, + "type": "surface", + "attributes": { + "type": "surface", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "z": { + "valType": "data_array", + "description": "Sets the z coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data" + }, + "x": { + "valType": "data_array", + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data" + }, + "y": { + "valType": "data_array", + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "description": "Sets the text elements associated with each z value. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "calc" + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "description": "Same as `text`.", + "editType": "calc" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in." + }, + "surfacecolor": { + "valType": "data_array", + "description": "Sets the surface color values, used for setting a color scale independent of `z`.", + "editType": "calc", + "role": "data" + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here z or surfacecolor) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as z or surfacecolor and if set, `cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as z or surfacecolor. Has no effect when `cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "contours": { + "x": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not contour lines about the x dimension are drawn.", + "editType": "calc" + }, + "start": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets the starting contour level value. Must be less than `contours.end`" + }, + "end": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets the end contour level value. Must be more than `contours.start`" + }, + "size": { + "valType": "number", + "dflt": null, + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the step between each contour level. Must be positive." + }, + "project": { + "x": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "y": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "z": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the contour lines.", + "editType": "calc" + }, + "usecolormap": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the contour lines.", + "editType": "calc" + }, + "highlight": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Determines whether or not contour lines about the x dimension are highlighted on hover.", + "editType": "calc" + }, + "highlightcolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the highlighted contour lines.", + "editType": "calc" + }, + "highlightwidth": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the highlighted contour lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "y": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not contour lines about the y dimension are drawn.", + "editType": "calc" + }, + "start": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets the starting contour level value. Must be less than `contours.end`" + }, + "end": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets the end contour level value. Must be more than `contours.start`" + }, + "size": { + "valType": "number", + "dflt": null, + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the step between each contour level. Must be positive." + }, + "project": { + "x": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "y": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "z": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the contour lines.", + "editType": "calc" + }, + "usecolormap": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the contour lines.", + "editType": "calc" + }, + "highlight": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Determines whether or not contour lines about the y dimension are highlighted on hover.", + "editType": "calc" + }, + "highlightcolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the highlighted contour lines.", + "editType": "calc" + }, + "highlightwidth": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the highlighted contour lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "z": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not contour lines about the z dimension are drawn.", + "editType": "calc" + }, + "start": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets the starting contour level value. Must be less than `contours.end`" + }, + "end": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets the end contour level value. Must be more than `contours.start`" + }, + "size": { + "valType": "number", + "dflt": null, + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the step between each contour level. Must be positive." + }, + "project": { + "x": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "y": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "z": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the contour lines.", + "editType": "calc" + }, + "usecolormap": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the contour lines.", + "editType": "calc" + }, + "highlight": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Determines whether or not contour lines about the z dimension are highlighted on hover.", + "editType": "calc" + }, + "highlightcolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the highlighted contour lines.", + "editType": "calc" + }, + "highlightwidth": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the highlighted contour lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "hidesurface": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not a surface is drawn. For example, set `hidesurface` to *false* `contours.x.show` to *true* and `contours.y.show` to *true* to draw a wire frame plot.", + "editType": "calc" + }, + "lightposition": { + "x": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 10, + "description": "Numeric vector, representing the X coordinate for each vertex.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 10000, + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "editType": "calc" + }, + "z": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 0, + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "lighting": { + "ambient": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Ambient light increases overall color visibility but can wash out the image.", + "editType": "calc" + }, + "diffuse": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "editType": "calc" + }, + "specular": { + "valType": "number", + "role": "style", + "min": 0, + "max": 2, + "dflt": 0.05, + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "editType": "calc" + }, + "roughness": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.5, + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "editType": "calc" + }, + "fresnel": { + "valType": "number", + "role": "style", + "min": 0, + "max": 5, + "dflt": 0.2, + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "editType": "calc" + }, + "_deprecated": { + "zauto": { + "description": "Obsolete. Use `cauto` instead.", + "editType": "calc" + }, + "zmin": { + "description": "Obsolete. Use `cmin` instead.", + "editType": "calc" + }, + "zmax": { + "description": "Obsolete. Use `cmax` instead.", + "editType": "calc" + } + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "zcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `z` date data." + }, + "scene": { + "valType": "subplotid", + "role": "info", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "surfacecolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for surfacecolor .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "isosurface": { + "meta": { + "description": "Draws isosurfaces between iso-min and iso-max values with coordinates given by four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as spaceframe between iso-min and iso-max values could also be drawn using this trace." + }, + "categories": [ + "gl3d" + ], + "animatable": false, + "type": "isosurface", + "attributes": { + "type": "isosurface", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "role": "data", + "description": "Sets the X coordinates of the vertices on X axis.", + "editType": "calc+clearAxisTypes" + }, + "y": { + "valType": "data_array", + "role": "data", + "description": "Sets the Y coordinates of the vertices on Y axis.", + "editType": "calc+clearAxisTypes" + }, + "z": { + "valType": "data_array", + "role": "data", + "description": "Sets the Z coordinates of the vertices on Z axis.", + "editType": "calc+clearAxisTypes" + }, + "value": { + "valType": "data_array", + "role": "data", + "description": "Sets the 4th dimension (value) of the vertices.", + "editType": "calc+clearAxisTypes" + }, + "isomin": { + "valType": "number", + "role": "info", + "description": "Sets the minimum boundary for iso-surface plot.", + "editType": "calc" + }, + "isomax": { + "valType": "number", + "role": "info", + "description": "Sets the maximum boundary for iso-surface plot.", + "editType": "calc" + }, + "surface": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Hides/displays surfaces between minimum and maximum iso-values.", + "editType": "calc" + }, + "count": { + "valType": "integer", + "role": "info", + "dflt": 2, + "min": 1, + "description": "Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "pattern": { + "valType": "flaglist", + "flags": [ + "A", + "B", + "C", + "D", + "E" + ], + "extras": [ + "all", + "odd", + "even" + ], + "dflt": "all", + "role": "style", + "description": "Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "spaceframe": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.15, + "description": "Sets the fill ratio of the `spaceframe` elements. The default fill value is 0.15 meaning that only 15% of the area of every faces of tetras would be shaded. Applying a greater `fill` ratio would allow the creation of stronger elements or could be sued to have entirely closed areas (in case of using 1).", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "slices": { + "x": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not slice planes about the x dimension are drawn.", + "editType": "calc" + }, + "locations": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + } + }, + "y": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not slice planes about the y dimension are drawn.", + "editType": "calc" + }, + "locations": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + } + }, + "z": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not slice planes about the z dimension are drawn.", + "editType": "calc" + }, + "locations": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object" + }, + "caps": { + "x": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "y": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "z": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "calc" + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "description": "Same as `text`.", + "editType": "calc" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "editType": "calc" + }, + "lightposition": { + "x": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the X coordinate for each vertex.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "editType": "calc" + }, + "z": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 0, + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "lighting": { + "vertexnormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1e-12, + "editType": "calc", + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry." + }, + "facenormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0, + "editType": "calc", + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry." + }, + "editType": "calc", + "ambient": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Ambient light increases overall color visibility but can wash out the image.", + "editType": "calc" + }, + "diffuse": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "editType": "calc" + }, + "specular": { + "valType": "number", + "role": "style", + "min": 0, + "max": 2, + "dflt": 0.05, + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "editType": "calc" + }, + "roughness": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.5, + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "editType": "calc" + }, + "fresnel": { + "valType": "number", + "role": "style", + "min": 0, + "max": 5, + "dflt": 0.2, + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "editType": "calc" + }, + "role": "object" + }, + "flatshading": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections." + }, + "contour": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not dynamic contours are shown on hover", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the contour lines.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the contour lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "scene": { + "valType": "subplotid", + "role": "info", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "valuesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for value .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "volume": { + "meta": { + "description": "Draws volume trace between iso-min and iso-max values with coordinates given by four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as spaceframe between iso-min and iso-max values could also be drawn using this trace." + }, + "categories": [ + "gl3d" + ], + "animatable": false, + "type": "volume", + "attributes": { + "type": "volume", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "role": "data", + "description": "Sets the X coordinates of the vertices on X axis.", + "editType": "calc+clearAxisTypes" + }, + "y": { + "valType": "data_array", + "role": "data", + "description": "Sets the Y coordinates of the vertices on Y axis.", + "editType": "calc+clearAxisTypes" + }, + "z": { + "valType": "data_array", + "role": "data", + "description": "Sets the Z coordinates of the vertices on Z axis.", + "editType": "calc+clearAxisTypes" + }, + "value": { + "valType": "data_array", + "role": "data", + "description": "Sets the 4th dimension (value) of the vertices.", + "editType": "calc+clearAxisTypes" + }, + "isomin": { + "valType": "number", + "role": "info", + "description": "Sets the minimum boundary for iso-surface plot.", + "editType": "calc" + }, + "isomax": { + "valType": "number", + "role": "info", + "description": "Sets the maximum boundary for iso-surface plot.", + "editType": "calc" + }, + "surface": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Hides/displays surfaces between minimum and maximum iso-values.", + "editType": "calc" + }, + "count": { + "valType": "integer", + "role": "info", + "dflt": 2, + "min": 1, + "description": "Sets the number of iso-surfaces between minimum and maximum iso-values. By default this value is 2 meaning that only minimum and maximum surfaces would be drawn.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the iso-surface. The default fill value of the surface is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "pattern": { + "valType": "flaglist", + "flags": [ + "A", + "B", + "C", + "D", + "E" + ], + "extras": [ + "all", + "odd", + "even" + ], + "dflt": "all", + "role": "style", + "description": "Sets the surface pattern of the iso-surface 3-D sections. The default pattern of the surface is `all` meaning that the rest of surface elements would be shaded. The check options (either 1 or 2) could be used to draw half of the squares on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E` may also be used to reduce the number of triangles on the iso-surfaces and creating other patterns of interest.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "spaceframe": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Displays/hides tetrahedron shapes between minimum and maximum iso-values. Often useful when either caps or surfaces are disabled or filled with values less than 1.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `spaceframe` elements. The default fill value is 1 meaning that they are entirely shaded. Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "slices": { + "x": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not slice planes about the x dimension are drawn.", + "editType": "calc" + }, + "locations": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis x except start and end.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + } + }, + "y": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not slice planes about the y dimension are drawn.", + "editType": "calc" + }, + "locations": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis y except start and end.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + } + }, + "z": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Determines whether or not slice planes about the z dimension are drawn.", + "editType": "calc" + }, + "locations": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "Specifies the location(s) of slices on the axis. When not specified slices would be created for all points of the axis z except start and end.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `slices`. The default fill value of the `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object" + }, + "caps": { + "x": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets the fill ratio of the `slices`. The default fill value of the x `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "y": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets the fill ratio of the `slices`. The default fill value of the y `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "z": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets the fill ratio of the `slices`. The default fill value of the z `slices` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "fill": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the fill ratio of the `caps`. The default fill value of the `caps` is 1 meaning that they are entirely shaded. On the other hand Applying a `fill` ratio less than one would allow the creation of openings parallel to the edges.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "calc" + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "description": "Same as `text`.", + "editType": "calc" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here `value`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as `value` and if set, `cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as `value` and if set, `cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `value`. Has no effect when `cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "editType": "calc" + }, + "opacityscale": { + "valType": "any", + "role": "style", + "editType": "calc", + "description": "Sets the opacityscale. The opacityscale must be an array containing arrays mapping a normalized value to an opacity value. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have higher opacity values and those in the middle would be more transparent Alternatively, `opacityscale` may be a palette name string of the following list: 'min', 'max', 'extremes' and 'uniform'. The default is 'uniform'." + }, + "lightposition": { + "x": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the X coordinate for each vertex.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "editType": "calc" + }, + "z": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 0, + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "lighting": { + "vertexnormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1e-12, + "editType": "calc", + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry." + }, + "facenormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0, + "editType": "calc", + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry." + }, + "editType": "calc", + "ambient": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Ambient light increases overall color visibility but can wash out the image.", + "editType": "calc" + }, + "diffuse": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "editType": "calc" + }, + "specular": { + "valType": "number", + "role": "style", + "min": 0, + "max": 2, + "dflt": 0.05, + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "editType": "calc" + }, + "roughness": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.5, + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "editType": "calc" + }, + "fresnel": { + "valType": "number", + "role": "style", + "min": 0, + "max": 5, + "dflt": 0.2, + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "editType": "calc" + }, + "role": "object" + }, + "flatshading": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections." + }, + "contour": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not dynamic contours are shown on hover", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the contour lines.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the contour lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "scene": { + "valType": "subplotid", + "role": "info", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "valuesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for value .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "mesh3d": { + "meta": { + "description": "Draws sets of triangles with coordinates given by three 1-dimensional arrays in `x`, `y`, `z` and (1) a sets of `i`, `j`, `k` indices (2) Delaunay triangulation or (3) the Alpha-shape algorithm or (4) the Convex-hull algorithm" + }, + "categories": [ + "gl3d" + ], + "animatable": false, + "type": "mesh3d", + "attributes": { + "type": "mesh3d", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", + "role": "data" + }, + "z": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z` jointly represent the X, Y and Z coordinates of the nth vertex.", + "role": "data" + }, + "i": { + "valType": "data_array", + "editType": "calc", + "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a point in space, which is the first vertex of a triangle.", + "role": "data" + }, + "j": { + "valType": "data_array", + "editType": "calc", + "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a point in space, which is the second vertex of a triangle.", + "role": "data" + }, + "k": { + "valType": "data_array", + "editType": "calc", + "description": "A vector of vertex indices, i.e. integer values between 0 and the length of the vertex vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}` together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet `{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a point in space, which is the third vertex of a triangle.", + "role": "data" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Same as `text`." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "delaunayaxis": { + "valType": "enumerated", + "role": "info", + "values": [ + "x", + "y", + "z" + ], + "dflt": "z", + "editType": "calc", + "description": "Sets the Delaunay axis, which is the axis that is perpendicular to the surface of the Delaunay triangulation. It has an effect if `i`, `j`, `k` are not provided and `alphahull` is set to indicate Delaunay triangulation." + }, + "alphahull": { + "valType": "number", + "role": "style", + "dflt": -1, + "editType": "calc", + "description": "Determines how the mesh surface triangles are derived from the set of vertices (points) represented by the `x`, `y` and `z` arrays, if the `i`, `j`, `k` arrays are not supplied. For general use of `mesh3d` it is preferred that `i`, `j`, `k` are supplied. If *-1*, Delaunay triangulation is used, which is mainly suitable if the mesh is a single, more or less layer surface that is perpendicular to `delaunayaxis`. In case the `delaunayaxis` intersects the mesh surface at more than one point it will result triangles that are very long in the dimension of `delaunayaxis`. If *>0*, the alpha-shape algorithm is used. In this case, the positive `alphahull` value signals the use of the alpha-shape algorithm, _and_ its value acts as the parameter for the mesh fitting. If *0*, the convex-hull algorithm is used. It is suitable for convex bodies or if the intention is to enclose the `x`, `y` and `z` point set into a convex hull." + }, + "intensity": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the vertex intensity values, used for plotting fields on meshes", + "role": "data" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the color of the whole mesh" + }, + "vertexcolor": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the color of each vertex Overrides *color*. While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1." + }, + "facecolor": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the color of each face Overrides *color* and *vertexcolor*." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here `intensity`) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as `intensity` and if set, `cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as `intensity` and if set, `cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as `intensity`. Has no effect when `cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "editType": "calc" + }, + "flatshading": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections." + }, + "contour": { + "show": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not dynamic contours are shown on hover", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the contour lines.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 1, + "max": 16, + "dflt": 2, + "description": "Sets the width of the contour lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "lightposition": { + "x": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the X coordinate for each vertex.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "editType": "calc" + }, + "z": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 0, + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "lighting": { + "vertexnormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1e-12, + "editType": "calc", + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry." + }, + "facenormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.000001, + "editType": "calc", + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry." + }, + "editType": "calc", + "ambient": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Ambient light increases overall color visibility but can wash out the image.", + "editType": "calc" + }, + "diffuse": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "editType": "calc" + }, + "specular": { + "valType": "number", + "role": "style", + "min": 0, + "max": 2, + "dflt": 0.05, + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "editType": "calc" + }, + "roughness": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.5, + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "editType": "calc" + }, + "fresnel": { + "valType": "number", + "role": "style", + "min": 0, + "max": 5, + "dflt": 0.2, + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "editType": "calc" + }, + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "zcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `z` date data." + }, + "scene": { + "valType": "subplotid", + "role": "info", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "isrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for i .", + "editType": "none" + }, + "jsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for j .", + "editType": "none" + }, + "ksrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for k .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "intensitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for intensity .", + "editType": "none" + }, + "vertexcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for vertexcolor .", + "editType": "none" + }, + "facecolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for facecolor .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "cone": { + "meta": { + "description": "Use cone traces to visualize vector fields. Specify a vector field using 6 1D arrays, 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, `w`. The cones are drawn exactly at the positions given by `x`, `y` and `z`." + }, + "categories": [ + "gl3d" + ], + "animatable": false, + "type": "cone", + "attributes": { + "type": "cone", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "role": "data", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates of the vector field and of the displayed cones." + }, + "y": { + "valType": "data_array", + "role": "data", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates of the vector field and of the displayed cones." + }, + "z": { + "valType": "data_array", + "role": "data", + "editType": "calc+clearAxisTypes", + "description": "Sets the z coordinates of the vector field and of the displayed cones." + }, + "u": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the x components of the vector field.", + "role": "data" + }, + "v": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the y components of the vector field.", + "role": "data" + }, + "w": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the z components of the vector field.", + "role": "data" + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "scaled", + "absolute" + ], + "role": "info", + "editType": "calc", + "dflt": "scaled", + "description": "Determines whether `sizeref` is set as a *scaled* (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as *absolute* value (in the same units as the vector field)." + }, + "sizeref": { + "valType": "number", + "role": "info", + "editType": "calc", + "min": 0, + "description": "Adjusts the cone size scaling. The size of the cones is determined by their u/v/w norm multiplied a factor and `sizeref`. This factor (computed internally) corresponds to the minimum \"time\" to travel across two successive x/y/z positions at the average velocity of those two successive positions. All cones in a given trace use the same factor. With `sizemode` set to *scaled*, `sizeref` is unitless, its default value is *0.5* With `sizemode` set to *absolute*, `sizeref` has the same units as the u/v/w vector field, its the default value is half the sample's maximum vector norm." + }, + "anchor": { + "valType": "enumerated", + "role": "info", + "editType": "calc", + "values": [ + "tip", + "tail", + "cm", + "center" + ], + "dflt": "cm", + "description": "Sets the cones' anchor with respect to their x/y/z positions. Note that *cm* denote the cone's center of mass which corresponds to 1/4 from the tail to tip." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets the text elements associated with the cones. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Same as `text`." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `norm` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "editType": "calc" + }, + "lightposition": { + "x": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the X coordinate for each vertex.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "editType": "calc" + }, + "z": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 0, + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "lighting": { + "vertexnormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1e-12, + "editType": "calc", + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry." + }, + "facenormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.000001, + "editType": "calc", + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry." + }, + "editType": "calc", + "ambient": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Ambient light increases overall color visibility but can wash out the image.", + "editType": "calc" + }, + "diffuse": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "editType": "calc" + }, + "specular": { + "valType": "number", + "role": "style", + "min": 0, + "max": 2, + "dflt": 0.05, + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "editType": "calc" + }, + "roughness": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.5, + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "editType": "calc" + }, + "fresnel": { + "valType": "number", + "role": "style", + "min": 0, + "max": 5, + "dflt": 0.2, + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "editType": "calc" + }, + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "u", + "v", + "w", + "norm", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "x+y+z+norm+text+name", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "scene": { + "valType": "subplotid", + "role": "info", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "usrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for u .", + "editType": "none" + }, + "vsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for v .", + "editType": "none" + }, + "wsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for w .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "streamtube": { + "meta": { + "description": "Use a streamtube trace to visualize flow in a vector field. Specify a vector field using 6 1D arrays of equal length, 3 position arrays `x`, `y` and `z` and 3 vector component arrays `u`, `v`, and `w`. By default, the tubes' starting positions will be cut from the vector field's x-z plane at its minimum y value. To specify your own starting position, use attributes `starts.x`, `starts.y` and `starts.z`. The color is encoded by the norm of (u, v, w), and the local radius by the divergence of (u, v, w)." + }, + "categories": [ + "gl3d" + ], + "animatable": false, + "type": "streamtube", + "attributes": { + "type": "streamtube", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "role": "data", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates of the vector field." + }, + "y": { + "valType": "data_array", + "role": "data", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates of the vector field." + }, + "z": { + "valType": "data_array", + "role": "data", + "editType": "calc+clearAxisTypes", + "description": "Sets the z coordinates of the vector field." + }, + "u": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the x components of the vector field.", + "role": "data" + }, + "v": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the y components of the vector field.", + "role": "data" + }, + "w": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the z components of the vector field.", + "role": "data" + }, + "starts": { + "x": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the x components of the starting position of the streamtubes", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the y components of the starting position of the streamtubes", + "role": "data" + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the z components of the starting position of the streamtubes", + "role": "data" + }, + "editType": "calc", + "role": "object", + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + } + }, + "maxdisplayed": { + "valType": "integer", + "min": 0, + "dflt": 1000, + "role": "info", + "editType": "calc", + "description": "The maximum number of displayed segments in a streamtube." + }, + "sizeref": { + "valType": "number", + "role": "info", + "editType": "calc", + "min": 0, + "dflt": 1, + "description": "The scaling factor for the streamtubes. The default is 1, which avoids two max divergence tubes from touching at adjacent starting positions." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Sets a text element associated with this trace. If trace `hoverinfo` contains a *text* flag, this text element will be seen in all hover labels. Note that streamtube traces do not support array `text` values." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Same as `text`." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `tubex`, `tubey`, `tubez`, `tubeu`, `tubev`, `tubew`, `norm` and `divergence`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here u/v/w norm) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as u/v/w norm and if set, `cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as u/v/w norm. Has no effect when `cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "description": "Sets the opacity of the surface. Please note that in the case of using high `opacity` values for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.", + "editType": "calc" + }, + "lightposition": { + "x": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the X coordinate for each vertex.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 100000, + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "editType": "calc" + }, + "z": { + "valType": "number", + "role": "style", + "min": -100000, + "max": 100000, + "dflt": 0, + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "lighting": { + "vertexnormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1e-12, + "editType": "calc", + "description": "Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry." + }, + "facenormalsepsilon": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.000001, + "editType": "calc", + "description": "Epsilon for face normals calculation avoids math issues arising from degenerate geometry." + }, + "editType": "calc", + "ambient": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Ambient light increases overall color visibility but can wash out the image.", + "editType": "calc" + }, + "diffuse": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.8, + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "editType": "calc" + }, + "specular": { + "valType": "number", + "role": "style", + "min": 0, + "max": 2, + "dflt": 0.05, + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "editType": "calc" + }, + "roughness": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 0.5, + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "editType": "calc" + }, + "fresnel": { + "valType": "number", + "role": "style", + "min": 0, + "max": 5, + "dflt": 0.2, + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "editType": "calc" + }, + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "u", + "v", + "w", + "norm", + "divergence", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "x+y+z+norm+text+name", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "scene": { + "valType": "subplotid", + "role": "info", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "usrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for u .", + "editType": "none" + }, + "vsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for v .", + "editType": "none" + }, + "wsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for w .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "scattergeo": { + "meta": { + "hrName": "scatter_geo", + "description": "The data visualized as scatter point or lines on a geographic map is provided either by longitude/latitude pairs in `lon` and `lat` respectively or by geographic location IDs or names in `locations`." + }, + "categories": [ + "geo", + "symbols", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "scattergeo", + "attributes": { + "type": "scattergeo", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "lon": { + "valType": "data_array", + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "role": "data" + }, + "lat": { + "valType": "data_array", + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "role": "data" + }, + "locations": { + "valType": "data_array", + "description": "Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info.", + "editType": "calc", + "role": "data" + }, + "locationmode": { + "valType": "enumerated", + "values": [ + "ISO-3", + "USA-states", + "country names" + ], + "role": "info", + "dflt": "ISO-3", + "description": "Determines the set of locations used to match entries in `locations` to regions on the map.", + "editType": "calc" + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `lat`, `lon`, `location` and `text`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the text font.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "calc", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "editType": "calc", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "marker": { + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "editType": "calc", + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "gradient": { + "type": { + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ], + "arrayOk": true, + "dflt": "none", + "role": "style", + "editType": "calc", + "description": "Sets the type of gradient used to fill the markers" + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical." + }, + "editType": "calc", + "role": "object", + "typesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for type .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "editType": "calc", + "role": "object", + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "toself" + ], + "dflt": "none", + "role": "style", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", + "editType": "calc" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of selected points." + }, + "editType": "calc", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the text font color of selected points." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "calc", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "lon", + "lat", + "location", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "geo": { + "valType": "subplotid", + "role": "info", + "dflt": "geo", + "editType": "calc", + "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "lonsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for lon .", + "editType": "none" + }, + "latsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for lat .", + "editType": "none" + }, + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "choropleth": { + "meta": { + "description": "The data that describes the choropleth value-to-color mapping is set in `z`. The geographic locations corresponding to each value in `z` are set in `locations`." + }, + "categories": [ + "geo", + "noOpacity" + ], + "animatable": false, + "type": "choropleth", + "attributes": { + "type": "choropleth", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "locations": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the coordinates via location IDs or names. See `locationmode` for more info.", + "role": "data" + }, + "locationmode": { + "valType": "enumerated", + "values": [ + "ISO-3", + "USA-states", + "country names" + ], + "role": "info", + "dflt": "ISO-3", + "description": "Determines the set of locations used to match entries in `locations` to regions on the map.", + "editType": "calc" + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the color values.", + "role": "data" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets the text elements associated with each location." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Same as `text`." + }, + "marker": { + "line": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444" + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 1 + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "opacity": { + "valType": "number", + "arrayOk": true, + "min": 0, + "max": 1, + "dflt": 1, + "role": "style", + "editType": "style", + "description": "Sets the opacity of the locations." + }, + "editType": "calc", + "role": "object", + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of selected points." + }, + "editType": "plot", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "editType": "plot", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "location", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "geo": { + "valType": "subplotid", + "role": "info", + "dflt": "geo", + "editType": "calc", + "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "scattergl": { + "meta": { + "hrName": "scatter_gl", + "description": "The data visualized as scatter point or lines is set in `x` and `y` using the WebGL plotting engine. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to a numerical arrays." + }, + "categories": [ + "gl", + "regl", + "cartesian", + "symbols", + "errorBarsOK", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "scattergl", + "attributes": { + "type": "scattergl", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step." + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the x coordinate step. See `x0` for more info." + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step." + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the y coordinate step. See `y0` for more info." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the text font.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "description": "Determines the drawing mode for this scatter trace.", + "editType": "calc" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the line width (in px)." + }, + "shape": { + "valType": "enumerated", + "values": [ + "linear", + "hv", + "vh", + "hvh", + "vhv" + ], + "dflt": "linear", + "role": "style", + "editType": "calc", + "description": "Determines the line shape. The values correspond to step-wise line shapes." + }, + "dash": { + "valType": "enumerated", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "description": "Sets the style of the lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "marker": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" + ], + "role": "style", + "editType": "calc", + "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", + "dflt": "none" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of selected points." + }, + "editType": "calc", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the text font color of selected points." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "calc", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "calc", + "description": "Sets the opacity of the trace." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. ", + "arrayOk": true + }, + "error_x": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "copy_ystyle": { + "valType": "boolean", + "role": "style", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "calc", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "error_y": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not this set of error bars is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ], + "role": "info", + "editType": "calc", + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *data*, the bar lengths are set with data set `array`." + }, + "symmetric": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars." + }, + "array": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "role": "data" + }, + "arrayminus": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "role": "data" + }, + "value": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars." + }, + "valueminus": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "info", + "editType": "calc", + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars" + }, + "traceref": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "tracerefminus": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the stoke color of the error bars." + }, + "thickness": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the thickness (in px) of the error bars." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars." + }, + "editType": "calc", + "_deprecated": { + "opacity": { + "valType": "number", + "role": "style", + "editType": "calc", + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity." + } + }, + "role": "object", + "arraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for array .", + "editType": "none" + }, + "arrayminussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none" + } + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "ycalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `y` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + } + } + }, + "splom": { + "meta": { + "description": "Splom traces generate scatter plot matrix visualizations. Each splom `dimensions` items correspond to a generated axis. Values for each of those dimensions are set in `dimensions[i].values`. Splom traces support all `scattergl` marker style attributes. Specify `layout.grid` attributes and/or layout x-axis and y-axis attributes for more control over the axis positioning and style. " + }, + "categories": [ + "gl", + "regl", + "cartesian", + "symbols", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "splom", + "attributes": { + "type": "splom", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "dimensions": { + "items": { + "dimension": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this dimension is shown on the graph. Note that even visible false dimension contribute to the default grid generate by this splom trace." + }, + "label": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Sets the label corresponding to this splom dimension." + }, + "values": { + "valType": "data_array", + "role": "data", + "editType": "calc+clearAxisTypes", + "description": "Sets the dimension values to be plotted." + }, + "axis": { + "type": { + "valType": "enumerated", + "values": [ + "linear", + "log", + "date", + "category" + ], + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the axis type for this dimension's generated x and y axes. Note that the axis `type` values set in layout take precedence over this attribute." + }, + "matches": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not the x & y axes generated by this dimension match. Equivalent to setting the `matches` axis attribute in the layout with the correct axis id." + }, + "editType": "calc+clearAxisTypes", + "role": "object" + }, + "editType": "calc+clearAxisTypes", + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object", + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + } + } + }, + "role": "object" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair to appear on hover. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Same as `text`." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "marker": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "style", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "style", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "markerSize", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "xaxes": { + "valType": "info_array", + "freeLength": true, + "role": "info", + "editType": "calc", + "items": { + "valType": "subplotid", + "regex": "/^x([2-9]|[1-9][0-9]+)?$/", + "editType": "plot" + }, + "description": "Sets the list of x axes corresponding to dimensions of this splom trace. By default, a splom will match the first N xaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis." + }, + "yaxes": { + "valType": "info_array", + "freeLength": true, + "role": "info", + "editType": "calc", + "items": { + "valType": "subplotid", + "regex": "/^y([2-9]|[1-9][0-9]+)?$/", + "editType": "plot" + }, + "description": "Sets the list of y axes corresponding to dimensions of this splom trace. By default, a splom will match the first N yaxes where N is the number of input dimensions. Note that, in case where `diagonal.visible` is false and `showupperhalf` or `showlowerhalf` is false, this splom trace will generate one less x-axis and one less y-axis." + }, + "diagonal": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not subplots on the diagonal are displayed." + }, + "editType": "calc", + "role": "object" + }, + "showupperhalf": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not subplots on the upper half from the diagonal are displayed." + }, + "showlowerhalf": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not subplots on the lower half from the diagonal are displayed." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of selected points." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "calc", + "description": "Sets the opacity of the trace." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "pointcloud": { + "meta": { + "description": "The data visualized as a point cloud set in `x` and `y` using the WebGl plotting engine." + }, + "categories": [ + "gl", + "gl2d", + "showLegend" + ], + "animatable": false, + "type": "pointcloud", + "attributes": { + "type": "pointcloud", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "role": "data" + }, + "xy": { + "valType": "data_array", + "editType": "calc", + "description": "Faster alternative to specifying `x` and `y` separately. If supplied, it must be a typed `Float32Array` array that represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]`", + "role": "data" + }, + "indices": { + "valType": "data_array", + "editType": "calc", + "description": "A sequential value, 0..n, supply it to avoid creating this array inside plotting. If specified, it must be a typed `Int32Array` array. Its length must be equal to or greater than the number of points. For the best performance and memory use, create one large `indices` typed array that is guaranteed to be at least as long as the largest number of points during use, and reuse it on each `Plotly.restyle()` call.", + "role": "data" + }, + "xbounds": { + "valType": "data_array", + "editType": "calc", + "description": "Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits.", + "role": "data" + }, + "ybounds": { + "valType": "data_array", + "editType": "calc", + "description": "Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits.", + "role": "data" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "marker": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the marker fill color. It accepts a specific color.If the color is not fully opaque and there are hundreds of thousandsof points, it may cause slower zooming and panning." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 1, + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity. The default value is `1` (fully opaque). If the markers are not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning. Opacity fades the color even if `blend` is left on `false` even if there is no translucency effect in that case." + }, + "blend": { + "valType": "boolean", + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Determines if colors are blended together for a translucency effect in case `opacity` is specified as a value less then `1`. Setting `blend` to `true` reduces zoom/pan speed if used with large numbers of points." + }, + "sizemin": { + "valType": "number", + "min": 0.1, + "max": 2, + "dflt": 0.5, + "role": "style", + "editType": "calc", + "description": "Sets the minimum size (in px) of the rendered marker points, effective when the `pointcloud` shows a million or more points." + }, + "sizemax": { + "valType": "number", + "min": 0.1, + "dflt": 20, + "role": "style", + "editType": "calc", + "description": "Sets the maximum size (in px) of the rendered marker points. Effective when the `pointcloud` shows only few points." + }, + "border": { + "color": { + "valType": "color", + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the stroke color. It accepts a specific color. If the color is not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning." + }, + "arearatio": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies what fraction of the marker area is covered with the border." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "xysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for xy .", + "editType": "none" + }, + "indicessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for indices .", + "editType": "none" + }, + "xboundssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for xbounds .", + "editType": "none" + }, + "yboundssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ybounds .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + } + } + }, + "heatmapgl": { + "meta": { + "description": "WebGL version of the heatmap trace type." + }, + "categories": [ + "gl", + "gl2d", + "2dMap" + ], + "animatable": false, + "type": "heatmapgl", + "attributes": { + "type": "heatmapgl", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the z data.", + "role": "data" + }, + "x": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the x coordinates.", + "impliedEdits": { + "xtype": "array" + }, + "role": "data" + }, + "x0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "dx": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the x coordinate step. See `x0` for more info.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "y": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the y coordinates.", + "impliedEdits": { + "ytype": "array" + }, + "role": "data" + }, + "y0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "dy": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the y coordinate step. See `y0` for more info.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "text": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text elements associated with each z value.", + "role": "data" + }, + "transpose": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Transposes the z data." + }, + "xtype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc", + "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided)." + }, + "ytype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc", + "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)" + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + } + } + }, + "parcoords": { + "meta": { + "description": "Parallel coordinates for multidimensional exploratory data analysis. The samples are specified in `dimensions`. The colors are set in `line.color`." + }, + "categories": [ + "gl", + "regl", + "noOpacity", + "noHover" + ], + "animatable": false, + "type": "parcoords", + "attributes": { + "type": "parcoords", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this parcoords trace (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this parcoords trace (in plot fraction)." + }, + "editType": "plot", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "If there is a layout grid, use the domain for this row in the grid for this parcoords trace ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "If there is a layout grid, use the domain for this column in the grid for this parcoords trace ." + }, + "role": "object" + }, + "labelangle": { + "valType": "angle", + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "Sets the angle of the labels with respect to the horizontal. For example, a `tickangle` of -90 draws the labels vertically. Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*." + }, + "labelside": { + "valType": "enumerated", + "role": "info", + "values": [ + "top", + "bottom" + ], + "dflt": "top", + "editType": "plot", + "description": "Specifies the location of the `label`. *top* positions labels above, next to the title *bottom* positions labels below the graph Tilted labels with *labelangle* may be positioned better inside margins when `labelposition` is set to *bottom*." + }, + "labelfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the font for the `dimension` labels.", + "role": "object" + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the font for the `dimension` tick values.", + "role": "object" + }, + "rangefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the font for the `dimension` range values.", + "role": "object" + }, + "dimensions": { + "items": { + "dimension": { + "label": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "The shown name of the dimension." + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`.", + "role": "data" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "visible": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "editType": "plot", + "description": "The domain range that represents the full, shown axis extent. Defaults to the `values` extent. Must be an array of `[fromValue, toValue]` with finite numbers as elements." + }, + "constraintrange": { + "valType": "info_array", + "role": "info", + "freeLength": true, + "dimensions": "1-2", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "editType": "plot", + "description": "The domain range to which the filter on the dimension is constrained. Must be an array of `[fromValue, toValue]` with `fromValue <= toValue`, or if `multiselect` is not disabled, you may give an array of arrays, where each inner array is `[fromValue, toValue]`." + }, + "multiselect": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Do we allow multiple selection ranges or just a single range?" + }, + "values": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Dimension values. `values[n]` represents the value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated). Each value must be a finite number." + }, + "editType": "calc", + "description": "The dimensions (variables) of the parallel coordinates chart. 2..60 dimensions are supported.", + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + }, + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + } + } + }, + "role": "object" + }, + "line": { + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets thelinecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color`is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": [ + [ + 0, + "#440154" + ], + [ + 0.06274509803921569, + "#48186a" + ], + [ + 0.12549019607843137, + "#472d7b" + ], + [ + 0.18823529411764706, + "#424086" + ], + [ + 0.25098039215686274, + "#3b528b" + ], + [ + 0.3137254901960784, + "#33638d" + ], + [ + 0.3764705882352941, + "#2c728e" + ], + [ + 0.4392156862745098, + "#26828e" + ], + [ + 0.5019607843137255, + "#21918c" + ], + [ + 0.5647058823529412, + "#1fa088" + ], + [ + 0.6274509803921569, + "#28ae80" + ], + [ + 0.6901960784313725, + "#3fbc73" + ], + [ + 0.7529411764705882, + "#5ec962" + ], + [ + 0.8156862745098039, + "#84d44b" + ], + [ + 0.8784313725490196, + "#addc30" + ], + [ + 0.9411764705882353, + "#d8e219" + ], + [ + 1, + "#fde725" + ] + ], + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `line.color`is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + } + } + }, + "parcats": { + "meta": { + "description": "Parallel categories diagram for multidimensional categorical data." + }, + "categories": [ + "noOpacity" + ], + "animatable": false, + "type": "parcats", + "attributes": { + "type": "parcats", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this parcats trace (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this parcats trace (in plot fraction)." + }, + "editType": "calc", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this row in the grid for this parcats trace ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this column in the grid for this parcats trace ." + }, + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "count", + "probability" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": false, + "dflt": "all", + "editType": "plot", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoveron": { + "valType": "enumerated", + "values": [ + "category", + "color", + "dimension" + ], + "dflt": "category", + "role": "info", + "editType": "plot", + "description": "Sets the hover interaction mode for the parcats diagram. If `category`, hover interaction take place per category. If `color`, hover interactions take place per color per category. If `dimension`, hover interactions take place across all categories per dimension." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `count`, `probability`, `category`, `categorycount`, `colorcount` and `bandcolorcount`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``." + }, + "arrangement": { + "valType": "enumerated", + "values": [ + "perpendicular", + "freeform", + "fixed" + ], + "dflt": "perpendicular", + "role": "style", + "editType": "plot", + "description": "Sets the drag interaction mode for categories and dimensions. If `perpendicular`, the categories can only move along a line perpendicular to the paths. If `freeform`, the categories can freely move on the plane. If `fixed`, the categories and dimensions are stationary." + }, + "bundlecolors": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "plot", + "description": "Sort paths so that like colors are bundled together within each category." + }, + "sortpaths": { + "valType": "enumerated", + "values": [ + "forward", + "backward" + ], + "dflt": "forward", + "role": "info", + "editType": "plot", + "description": "Sets the path sorting algorithm. If `forward`, sort paths based on dimension categories from left to right. If `backward`, sort paths based on dimensions categories from right to left." + }, + "labelfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets the font for the `dimension` labels.", + "role": "object" + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets the font for the `category` labels.", + "role": "object" + }, + "dimensions": { + "items": { + "dimension": { + "label": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "The shown name of the dimension." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ], + "dflt": "trace", + "role": "info", + "editType": "calc", + "description": "Specifies the ordering logic for the categories in the dimension. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the order in which categories in this dimension appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "ticktext": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets alternative tick labels for the categories in this dimension. Only has an effect if `categoryorder` is set to *array*. Should be an array the same length as `categoryarray` Used with `categoryorder`." + }, + "values": { + "valType": "data_array", + "role": "data", + "dflt": [], + "editType": "calc", + "description": "Dimension values. `values[n]` represents the category value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated)." + }, + "displayindex": { + "valType": "integer", + "role": "info", + "editType": "calc", + "description": "The display index of dimension, from left to right, zero indexed, defaults to dimension index." + }, + "editType": "calc", + "description": "The dimensions (variables) of the parallel categories diagram.", + "visible": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "calc", + "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`." + }, + "role": "object", + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + }, + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + } + } + }, + "role": "object" + }, + "line": { + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets thelinecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `line.cmin` and `line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `line.color`) or the bounds set in `line.cmin` and `line.cmax` Has an effect only if in `line.color`is set to a numerical array. Defaults to `false` when `line.cmin` and `line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color` and if set, `line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `line.cmin` and/or `line.cmax` to be equidistant to this point. Has an effect only if in `line.color`is set to a numerical array. Value should have the same units as in `line.color`. Has no effect when `line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. Has an effect only if in `line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `line.color`is set to a numerical array. If true, `line.cmin` will correspond to the last color in the array and `line.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `line.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "shape": { + "valType": "enumerated", + "values": [ + "linear", + "hspline" + ], + "dflt": "linear", + "role": "info", + "editType": "plot", + "description": "Sets the shape of the paths. If `linear`, paths are composed of straight lines. If `hspline`, paths are composed of horizontal curved splines" + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `count` and `probability`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``." + }, + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "counts": { + "valType": "number", + "min": 0, + "dflt": 1, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "The number of observations represented by each state. Defaults to 1 so that each state represents one observation" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "countssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for counts .", + "editType": "none" + } + } + }, + "scattermapbox": { + "meta": { + "hrName": "scatter_mapbox", + "description": "The data visualized as scatter point, lines or marker symbols on a Mapbox GL geographic map is provided by longitude/latitude pairs in `lon` and `lat`." + }, + "categories": [ + "mapbox", + "gl", + "symbols", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "scattermapbox", + "attributes": { + "type": "scattermapbox", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "lon": { + "valType": "data_array", + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "role": "data" + }, + "lat": { + "valType": "data_array", + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "role": "data" + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover.", + "dflt": "markers" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `lat`, `lon` and `text`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the line width (in px)." + }, + "editType": "calc", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "marker": { + "symbol": { + "valType": "string", + "dflt": "circle", + "role": "style", + "arrayOk": true, + "description": "Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols.", + "editType": "calc" + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "editType": "calc", + "role": "object", + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "toself" + ], + "dflt": "none", + "role": "style", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", + "editType": "calc" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "dflt": "Open Sans Regular, Arial Unicode MS Regular", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", + "editType": "calc", + "role": "object" + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": false, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "below": { + "valType": "string", + "role": "info", + "description": "Determines if this scattermapbox trace's layers are to be inserted before the layer with the specified ID. By default, scattermapbox layers are inserted above all the base layers. To place the scattermapbox layers above every other layer, set `below` to *''*.", + "editType": "calc" + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of selected points." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "calc", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "calc", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "lon", + "lat", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "subplot": { + "valType": "subplotid", + "role": "info", + "dflt": "mapbox", + "editType": "calc", + "description": "Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "lonsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for lon .", + "editType": "none" + }, + "latsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for lat .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "choroplethmapbox": { + "meta": { + "hr_name": "choropleth_mapbox", + "description": "GeoJSON features to be filled are set in `geojson` The data that describes the choropleth value-to-color mapping is set in `locations` and `z`." + }, + "categories": [ + "mapbox", + "gl", + "noOpacity" + ], + "animatable": false, + "type": "choroplethmapbox", + "attributes": { + "type": "choroplethmapbox", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "locations": { + "valType": "data_array", + "editType": "calc", + "description": "Sets which features found in *geojson* to plot using their feature `id` field.", + "role": "data" + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the color values.", + "role": "data" + }, + "geojson": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Sets the GeoJSON data associated with this trace. Can be set as a valid GeoJSON object or as URL string Note that we only accept GeoJSON of type *FeatureCollection* and *Feature* with geometries of type *Polygon* and *MultiPolygon*." + }, + "below": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Determines if the choropleth polygons will be inserted before the layer with the specified ID. By default, choroplethmapbox traces are placed above the water layers. If set to '', the layer will be inserted above every existing layer." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets the text elements associated with each location." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Same as `text`." + }, + "marker": { + "line": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "plot", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "dflt": "#444" + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 1 + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "opacity": { + "valType": "number", + "arrayOk": true, + "min": 0, + "max": 1, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the opacity of the locations." + }, + "editType": "calc", + "role": "object", + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "plot", + "description": "Sets the marker opacity of selected points." + }, + "editType": "plot", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "plot", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "editType": "plot", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "location", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variable `properties` Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "subplot": { + "valType": "subplotid", + "role": "info", + "dflt": "mapbox", + "editType": "calc", + "description": "Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "locationssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "densitymapbox": { + "meta": { + "hr_name": "density_mapbox", + "description": "Draws a bivariate kernel density estimation with a Gaussian kernel from `lon` and `lat` coordinates and optional `z` values using a colorscale." + }, + "categories": [ + "mapbox", + "gl" + ], + "animatable": false, + "type": "densitymapbox", + "attributes": { + "type": "densitymapbox", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "lon": { + "valType": "data_array", + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "role": "data" + }, + "lat": { + "valType": "data_array", + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "role": "data" + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the points' weight. For example, a value of 10 would be equivalent to having 10 points of weight 1 in the same spot", + "role": "data" + }, + "radius": { + "valType": "number", + "role": "info", + "editType": "plot", + "arrayOk": true, + "min": 1, + "dflt": 30, + "description": "Sets the radius of influence of one `lon` / `lat` point in pixels. Increasing the value makes the densitymapbox trace smoother, but less detailed." + }, + "below": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Determines if the densitymapbox trace will be inserted before the layer with the specified ID. By default, densitymapbox traces are placed below the first layer of type symbol If set to '', the layer will be inserted above every existing layer." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "lon", + "lat", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "subplot": { + "valType": "subplotid", + "role": "info", + "dflt": "mapbox", + "editType": "calc", + "description": "Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "lonsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for lon .", + "editType": "none" + }, + "latsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for lat .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "radiussrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for radius .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "sankey": { + "meta": { + "description": "Sankey plots for network flow data analysis. The nodes are specified in `nodes` and the links between sources and targets in `links`. The colors are set in `nodes[i].color` and `links[i].color`, otherwise defaults are used." + }, + "categories": [ + "noOpacity" + ], + "animatable": false, + "type": "sankey", + "attributes": { + "type": "sankey", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": false, + "dflt": "all", + "editType": "calc", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired. Note that this attribute is superseded by `node.hoverinfo` and `node.hoverinfo` for nodes and links respectively." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "calc", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "calc", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this sankey trace (in plot fraction).", + "editType": "calc" + }, + "y": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this sankey trace (in plot fraction).", + "editType": "calc" + }, + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this row in the grid for this sankey trace .", + "editType": "calc" + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this column in the grid for this sankey trace .", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "orientation": { + "valType": "enumerated", + "values": [ + "v", + "h" + ], + "dflt": "h", + "role": "style", + "description": "Sets the orientation of the Sankey diagram.", + "editType": "calc" + }, + "valueformat": { + "valType": "string", + "dflt": ".3s", + "role": "style", + "description": "Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format", + "editType": "calc" + }, + "valuesuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "description": "Adds a unit to follow the value in the hover tooltip. Add a space if a separation is necessary from the value.", + "editType": "calc" + }, + "arrangement": { + "valType": "enumerated", + "values": [ + "snap", + "perpendicular", + "freeform", + "fixed" + ], + "dflt": "snap", + "role": "style", + "description": "If value is `snap` (the default), the node arrangement is assisted by automatic snapping of elements to preserve space between nodes specified via `nodepad`. If value is `perpendicular`, the nodes can only move along a line perpendicular to the flow. If value is `freeform`, the nodes can freely move on the plane. If value is `fixed`, the nodes are stationary.", + "editType": "calc" + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the font for node labels", + "editType": "calc", + "role": "object" + }, + "node": { + "label": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "The shown name of the node.", + "editType": "calc" + }, + "groups": { + "valType": "info_array", + "impliedEdits": { + "x": [], + "y": [] + }, + "dimensions": 2, + "freeLength": true, + "dflt": [], + "items": { + "valType": "number", + "editType": "calc" + }, + "role": "info", + "description": "Groups of nodes. Each group is defined by an array with the indices of the nodes it contains. Multiple groups can be specified.", + "editType": "calc" + }, + "x": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "The normalized horizontal position of the node.", + "editType": "calc" + }, + "y": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "The normalized vertical position of the node.", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "arrayOk": true, + "description": "Sets the `node` color. It can be a single value, or an array for specifying color for each `node`. If `node.color` is omitted, then the default `Plotly` color palette will be cycled through to have a variety of colors. These defaults are not fully opaque, to allow some visibility of what is beneath the node.", + "editType": "calc" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "arrayOk": true, + "description": "Sets the color of the `line` around each `node`.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0.5, + "arrayOk": true, + "description": "Sets the width (in px) of the `line` around each `node`.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "pad": { + "valType": "number", + "arrayOk": false, + "min": 0, + "dflt": 20, + "role": "style", + "description": "Sets the padding (in px) between the `nodes`.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "arrayOk": false, + "min": 1, + "dflt": 20, + "role": "style", + "description": "Sets the thickness (in px) of the `nodes`.", + "editType": "calc" + }, + "hoverinfo": { + "valType": "enumerated", + "values": [ + "all", + "none", + "skip" + ], + "dflt": "all", + "role": "info", + "description": "Determines which trace information appear when hovering nodes. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "editType": "calc" + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "calc", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "calc", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "description": "The nodes of the Sankey plot.", + "editType": "calc", + "role": "object", + "labelsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for label .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "link": { + "label": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "The shown name of the link.", + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "arrayOk": true, + "description": "Sets the `link` color. It can be a single value, or an array for specifying color for each `link`. If `link.color` is omitted, then by default, a translucent grey link will be used.", + "editType": "calc" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "dflt": "#444", + "arrayOk": true, + "description": "Sets the color of the `line` around each `link`.", + "editType": "calc" + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "arrayOk": true, + "description": "Sets the width (in px) of the `line` around each `link`.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "source": { + "valType": "data_array", + "role": "data", + "dflt": [], + "description": "An integer number `[0..nodes.length - 1]` that represents the source node.", + "editType": "calc" + }, + "target": { + "valType": "data_array", + "role": "data", + "dflt": [], + "description": "An integer number `[0..nodes.length - 1]` that represents the target node.", + "editType": "calc" + }, + "value": { + "valType": "data_array", + "dflt": [], + "role": "data", + "description": "A numeric value representing the flow volume value.", + "editType": "calc" + }, + "hoverinfo": { + "valType": "enumerated", + "values": [ + "all", + "none", + "skip" + ], + "dflt": "all", + "role": "info", + "description": "Determines which trace information appear when hovering links. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "editType": "calc" + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "calc", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "calc", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "calc", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `value` and `label`. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "colorscales": { + "items": { + "concentrationscales": { + "editType": "calc", + "label": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "The label of the links to color based on their concentration within a flow.", + "dflt": "" + }, + "cmax": { + "valType": "number", + "role": "info", + "editType": "calc", + "dflt": 1, + "description": "Sets the upper bound of the color domain." + }, + "cmin": { + "valType": "number", + "role": "info", + "editType": "calc", + "dflt": 0, + "description": "Sets the lower bound of the color domain." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": [ + [ + 0, + "white" + ], + [ + 1, + "black" + ] + ], + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "description": "The links of the Sankey plot.", + "role": "object", + "editType": "calc", + "labelsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for label .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "sourcesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for source .", + "editType": "none" + }, + "targetsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for target .", + "editType": "none" + }, + "valuesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for value .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + } + } + }, + "indicator": { + "meta": { + "description": "An indicator is used to visualize a single `value` along with some contextual information such as `steps` or a `threshold`, using a combination of three visual elements: a number, a delta, and/or a gauge. Deltas are taken with respect to a `reference`. Gauges can be either angular or bullet (aka linear) gauges." + }, + "categories": [ + "svg", + "noOpacity", + "noHover" + ], + "animatable": true, + "type": "indicator", + "attributes": { + "type": "indicator", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "mode": { + "valType": "flaglist", + "editType": "calc", + "role": "info", + "flags": [ + "number", + "delta", + "gauge" + ], + "dflt": "number", + "description": "Determines how the value is displayed on the graph. `number` displays the value numerically in text. `delta` displays the difference to a reference value in text. Finally, `gauge` displays the value graphically on an axis." + }, + "value": { + "valType": "number", + "editType": "calc", + "role": "info", + "anim": true, + "description": "Sets the number to be displayed." + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "role": "info", + "editType": "plot", + "description": "Sets the horizontal alignment of the `text` within the box. Note that this attribute has no effect if an angular gauge is displayed: in this case, it is always centered" + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this indicator trace (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this indicator trace (in plot fraction)." + }, + "editType": "calc", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this row in the grid for this indicator trace ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "If there is a layout grid, use the domain for this column in the grid for this indicator trace ." + }, + "role": "object" + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this indicator." + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "role": "info", + "editType": "plot", + "description": "Sets the horizontal alignment of the title. It defaults to `center` except for bullet charts for which it defaults to right." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Set the font used to display the title", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "number": { + "valueformat": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "plot", + "description": "Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Set the font used to display main number", + "role": "object" + }, + "prefix": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "plot", + "description": "Sets a prefix appearing before the number." + }, + "suffix": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "plot", + "description": "Sets a suffix appearing next to the number." + }, + "editType": "plot", + "role": "object" + }, + "delta": { + "reference": { + "valType": "number", + "role": "info", + "editType": "calc", + "description": "Sets the reference value to compute the delta. By default, it is set to the current value." + }, + "position": { + "valType": "enumerated", + "values": [ + "top", + "bottom", + "left", + "right" + ], + "role": "info", + "dflt": "bottom", + "editType": "plot", + "description": "Sets the position of delta with respect to the number." + }, + "relative": { + "valType": "boolean", + "editType": "plot", + "role": "info", + "dflt": false, + "description": "Show relative change" + }, + "valueformat": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "increasing": { + "symbol": { + "valType": "string", + "role": "info", + "dflt": "▲", + "editType": "plot", + "description": "Sets the symbol to display for increasing value" + }, + "color": { + "valType": "color", + "role": "info", + "dflt": "#3D9970", + "editType": "plot", + "description": "Sets the color for increasing value." + }, + "editType": "plot", + "role": "object" + }, + "decreasing": { + "symbol": { + "valType": "string", + "role": "info", + "dflt": "▼", + "editType": "plot", + "description": "Sets the symbol to display for increasing value" + }, + "color": { + "valType": "color", + "role": "info", + "dflt": "#FF4136", + "editType": "plot", + "description": "Sets the color for increasing value." + }, + "editType": "plot", + "role": "object" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Set the font used to display the delta", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "gauge": { + "shape": { + "valType": "enumerated", + "editType": "plot", + "role": "info", + "dflt": "angular", + "values": [ + "angular", + "bullet" + ], + "description": "Set the shape of the gauge" + }, + "bar": { + "color": { + "valType": "color", + "editType": "plot", + "role": "info", + "description": "Sets the background color of the arc.", + "dflt": "green" + }, + "line": { + "color": { + "valType": "color", + "role": "info", + "dflt": "#444", + "editType": "plot", + "description": "Sets the color of the line enclosing each sector." + }, + "width": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 0, + "editType": "plot", + "description": "Sets the width (in px) of the line enclosing each sector." + }, + "editType": "calc", + "role": "object" + }, + "thickness": { + "valType": "number", + "role": "info", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "plot", + "description": "Sets the thickness of the bar as a fraction of the total thickness of the gauge." + }, + "editType": "calc", + "description": "Set the appearance of the gauge's value", + "role": "object" + }, + "bgcolor": { + "valType": "color", + "role": "info", + "editType": "plot", + "description": "Sets the gauge background color." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "info", + "editType": "plot", + "description": "Sets the color of the border enclosing the gauge." + }, + "borderwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "info", + "editType": "plot", + "description": "Sets the width (in px) of the border enclosing the gauge." + }, + "axis": { + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "editType": "plot", + "description": "Sets the range of this axis." + }, + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "outside" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "plot" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "description": "Sets the color bar's tick label font", + "editType": "plot", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "editType": "plot", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "steps": { + "items": { + "step": { + "color": { + "valType": "color", + "editType": "plot", + "role": "info", + "description": "Sets the background color of the arc." + }, + "line": { + "color": { + "valType": "color", + "role": "info", + "dflt": "#444", + "editType": "plot", + "description": "Sets the color of the line enclosing each sector." + }, + "width": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 0, + "editType": "plot", + "description": "Sets the width (in px) of the line enclosing each sector." + }, + "editType": "calc", + "role": "object" + }, + "thickness": { + "valType": "number", + "role": "info", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "plot", + "description": "Sets the thickness of the bar as a fraction of the total thickness of the gauge." + }, + "editType": "calc", + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "editType": "plot", + "description": "Sets the range of this axis." + }, + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "threshold": { + "line": { + "color": { + "valType": "color", + "role": "info", + "dflt": "#444", + "editType": "plot", + "description": "Sets the color of the threshold line." + }, + "width": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 1, + "editType": "plot", + "description": "Sets the width (in px) of the threshold line." + }, + "editType": "plot", + "role": "object" + }, + "thickness": { + "valType": "number", + "role": "info", + "min": 0, + "max": 1, + "dflt": 0.85, + "editType": "plot", + "description": "Sets the thickness of the threshold line as a fraction of the thickness of the gauge." + }, + "value": { + "valType": "number", + "editType": "calc", + "dflt": false, + "role": "info", + "description": "Sets a treshold value drawn as a line." + }, + "editType": "plot", + "role": "object" + }, + "description": "The gauge of the Indicator plot.", + "editType": "plot", + "role": "object" + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + } + } + }, + "table": { + "meta": { + "description": "Table view for detailed data viewing. The data are arranged in a grid of rows and columns. Most styling can be specified for columns, rows or individual cells. Table is using a column-major order, ie. the grid is represented as a vector of column vectors." + }, + "categories": [ + "noOpacity" + ], + "animatable": false, + "type": "table", + "attributes": { + "type": "table", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this table trace (in plot fraction).", + "editType": "calc" + }, + "y": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "calc" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this table trace (in plot fraction).", + "editType": "calc" + }, + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this row in the grid for this table trace .", + "editType": "calc" + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this column in the grid for this table trace .", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "columnwidth": { + "valType": "number", + "arrayOk": true, + "dflt": null, + "role": "style", + "description": "The width of columns expressed as a ratio. Columns fill the available width in proportion of their specified column widths.", + "editType": "calc" + }, + "columnorder": { + "valType": "data_array", + "role": "data", + "description": "Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero.", + "editType": "calc" + }, + "header": { + "values": { + "valType": "data_array", + "role": "data", + "dflt": [], + "description": "Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", + "editType": "calc" + }, + "format": { + "valType": "data_array", + "role": "data", + "dflt": [], + "description": "Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format", + "editType": "calc" + }, + "prefix": { + "valType": "string", + "arrayOk": true, + "dflt": null, + "role": "style", + "description": "Prefix for cell values.", + "editType": "calc" + }, + "suffix": { + "valType": "string", + "arrayOk": true, + "dflt": null, + "role": "style", + "description": "Suffix for cell values.", + "editType": "calc" + }, + "height": { + "valType": "number", + "dflt": 28, + "role": "style", + "description": "The height of cells.", + "editType": "calc" + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "center", + "role": "style", + "editType": "calc", + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "arrayOk": true + }, + "line": { + "width": { + "valType": "number", + "arrayOk": true, + "dflt": 1, + "role": "style", + "editType": "calc" + }, + "color": { + "valType": "color", + "arrayOk": true, + "dflt": "grey", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "fill": { + "color": { + "valType": "color", + "arrayOk": true, + "dflt": "white", + "role": "style", + "description": "Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true, + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "arrayOk": true, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "arrayOk": true, + "editType": "calc" + }, + "description": "", + "editType": "calc", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object", + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + }, + "formatsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for format .", + "editType": "none" + }, + "prefixsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for prefix .", + "editType": "none" + }, + "suffixsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for suffix .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + } + }, + "cells": { + "values": { + "valType": "data_array", + "role": "data", + "dflt": [], + "description": "Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", + "editType": "calc" + }, + "format": { + "valType": "data_array", + "role": "data", + "dflt": [], + "description": "Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format", + "editType": "calc" + }, + "prefix": { + "valType": "string", + "arrayOk": true, + "dflt": null, + "role": "style", + "description": "Prefix for cell values.", + "editType": "calc" + }, + "suffix": { + "valType": "string", + "arrayOk": true, + "dflt": null, + "role": "style", + "description": "Suffix for cell values.", + "editType": "calc" + }, + "height": { + "valType": "number", + "dflt": 20, + "role": "style", + "description": "The height of cells.", + "editType": "calc" + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "center", + "role": "style", + "editType": "calc", + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "arrayOk": true + }, + "line": { + "width": { + "valType": "number", + "arrayOk": true, + "dflt": 1, + "role": "style", + "editType": "calc" + }, + "color": { + "valType": "color", + "arrayOk": true, + "dflt": "grey", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "fill": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "dflt": "white", + "description": "Sets the cell fill color. It accepts either a specific color or an array of colors or a 2D array of colors.", + "editType": "calc" + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true, + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "arrayOk": true, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "arrayOk": true, + "editType": "calc" + }, + "description": "", + "editType": "calc", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object", + "valuessrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for values .", + "editType": "none" + }, + "formatsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for format .", + "editType": "none" + }, + "prefixsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for prefix .", + "editType": "none" + }, + "suffixsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for suffix .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + } + }, + "editType": "calc", + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "columnwidthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for columnwidth .", + "editType": "none" + }, + "columnordersrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for columnorder .", + "editType": "none" + } + } + }, + "carpet": { + "meta": { + "description": "The data describing carpet axis layout is set in `y` and (optionally) also `x`. If only `y` is present, `x` the plot is interpreted as a cheater plot and is filled in using the `y` values. `x` and `y` may either be 2D arrays matching with each dimension matching that of `a` and `b`, or they may be 1D arrays with total length equal to that of `a` and `b`." + }, + "categories": [ + "cartesian", + "svg", + "carpet", + "carpetAxis", + "notLegendIsolatable", + "noMultiCategory", + "noHover" + ], + "animatable": true, + "type": "carpet", + "attributes": { + "type": "carpet", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "anim": true, + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "anim": true, + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "carpet": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie" + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "A two dimensional array of x coordinates at each carpet point. If ommitted, the plot is a cheater plot and the xaxis is hidden by default.", + "role": "data" + }, + "y": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "A two dimensional array of y coordinates at each carpet point.", + "role": "data" + }, + "a": { + "valType": "data_array", + "editType": "calc", + "description": "An array containing values of the first parameter value", + "role": "data" + }, + "a0": { + "valType": "number", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Alternate to `a`. Builds a linear space of a coordinates. Use with `da` where `a0` is the starting coordinate and `da` the step." + }, + "da": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the a coordinate step. See `a0` for more info." + }, + "b": { + "valType": "data_array", + "editType": "calc", + "description": "A two dimensional array of y coordinates at each carpet point.", + "role": "data" + }, + "b0": { + "valType": "number", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Alternate to `b`. Builds a linear space of a coordinates. Use with `db` where `b0` is the starting coordinate and `db` the step." + }, + "db": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the b coordinate step. See `b0` for more info." + }, + "cheaterslope": { + "valType": "number", + "role": "info", + "dflt": 1, + "editType": "calc", + "description": "The shift applied to each successive row of data in creating a cheater plot. Only used if `x` is been ommitted." + }, + "aaxis": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "smoothing": { + "valType": "number", + "dflt": 1, + "min": 0, + "max": 1.3, + "role": "info", + "editType": "calc" + }, + "title": { + "text": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "calc", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets this axis' title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "offset": { + "valType": "number", + "role": "info", + "dflt": 10, + "editType": "calc", + "description": "An additional amount by which to offset the title from the tick labels, given in pixels. Note that this used to be set by the now deprecated `titleoffset` attribute." + }, + "editType": "calc", + "role": "object" + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "date", + "category" + ], + "dflt": "-", + "role": "info", + "editType": "calc", + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ], + "dflt": "normal", + "role": "style", + "editType": "calc", + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data." + }, + "range": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "fixedrange": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled." + }, + "cheatertype": { + "valType": "enumerated", + "values": [ + "index", + "value" + ], + "dflt": "value", + "role": "info", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "linear", + "array" + ], + "dflt": "array", + "role": "info", + "editType": "calc" + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "showticklabels": { + "valType": "enumerated", + "values": [ + "start", + "end", + "both", + "none" + ], + "dflt": "start", + "role": "style", + "editType": "calc", + "description": "Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ], + "dflt": "trace", + "role": "info", + "editType": "calc", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "labelpadding": { + "valType": "integer", + "role": "style", + "dflt": 10, + "editType": "calc", + "description": "Extra padding between label and the axis" + }, + "labelprefix": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "Sets a axis label prefix." + }, + "labelsuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a axis label suffix." + }, + "showline": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "gridcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark." + }, + "minorgridcount": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Sets the number of minor grid ticks per major grid tick" + }, + "minorgridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the grid lines." + }, + "minorgridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "calc", + "description": "Sets the color of the grid lines." + }, + "startline": { + "valType": "boolean", + "role": "style", + "editType": "calc", + "description": "Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines." + }, + "startlinecolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color of the start line." + }, + "startlinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the start line." + }, + "endline": { + "valType": "boolean", + "role": "style", + "editType": "calc", + "description": "Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines." + }, + "endlinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the end line." + }, + "endlinecolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color of the end line." + }, + "tick0": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "The starting index of grid lines along the axis" + }, + "dtick": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "The stride between grid lines along the axis" + }, + "arraytick0": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "The starting index of grid lines along the axis" + }, + "arraydtick": { + "valType": "integer", + "min": 1, + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "The stride between grid lines along the axis" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Deprecated in favor of `title.text`. Note that value of `title` is no longer a simple *string* but a set of sub-attributes." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Deprecated in favor of `title.font`." + }, + "titleoffset": { + "valType": "number", + "role": "info", + "dflt": 10, + "editType": "calc", + "description": "Deprecated in favor of `title.offset`." + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + }, + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + } + }, + "baxis": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "smoothing": { + "valType": "number", + "dflt": 1, + "min": 0, + "max": 1.3, + "role": "info", + "editType": "calc" + }, + "title": { + "text": { + "valType": "string", + "dflt": "", + "role": "info", + "editType": "calc", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets this axis' title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "offset": { + "valType": "number", + "role": "info", + "dflt": 10, + "editType": "calc", + "description": "An additional amount by which to offset the title from the tick labels, given in pixels. Note that this used to be set by the now deprecated `titleoffset` attribute." + }, + "editType": "calc", + "role": "object" + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "date", + "category" + ], + "dflt": "-", + "role": "info", + "editType": "calc", + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ], + "dflt": "normal", + "role": "style", + "editType": "calc", + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data." + }, + "range": { + "valType": "info_array", + "role": "info", + "editType": "calc", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "fixedrange": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled." + }, + "cheatertype": { + "valType": "enumerated", + "values": [ + "index", + "value" + ], + "dflt": "value", + "role": "info", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "linear", + "array" + ], + "dflt": "array", + "role": "info", + "editType": "calc" + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "showticklabels": { + "valType": "enumerated", + "values": [ + "start", + "end", + "both", + "none" + ], + "dflt": "start", + "role": "style", + "editType": "calc", + "description": "Determines whether axis labels are drawn on the low side, the high side, both, or neither side of the axis." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ], + "dflt": "trace", + "role": "info", + "editType": "calc", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "labelpadding": { + "valType": "integer", + "role": "style", + "dflt": 10, + "editType": "calc", + "description": "Extra padding between label and the axis" + }, + "labelprefix": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "Sets a axis label prefix." + }, + "labelsuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a axis label suffix." + }, + "showline": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "gridcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark." + }, + "minorgridcount": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Sets the number of minor grid ticks per major grid tick" + }, + "minorgridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the grid lines." + }, + "minorgridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "calc", + "description": "Sets the color of the grid lines." + }, + "startline": { + "valType": "boolean", + "role": "style", + "editType": "calc", + "description": "Determines whether or not a line is drawn at along the starting value of this axis. If *true*, the start line is drawn on top of the grid lines." + }, + "startlinecolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color of the start line." + }, + "startlinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the start line." + }, + "endline": { + "valType": "boolean", + "role": "style", + "editType": "calc", + "description": "Determines whether or not a line is drawn at along the final value of this axis. If *true*, the end line is drawn on top of the grid lines." + }, + "endlinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the end line." + }, + "endlinecolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color of the end line." + }, + "tick0": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "The starting index of grid lines along the axis" + }, + "dtick": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "The stride between grid lines along the axis" + }, + "arraytick0": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "The starting index of grid lines along the axis" + }, + "arraydtick": { + "valType": "integer", + "min": 1, + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "The stride between grid lines along the axis" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Deprecated in favor of `title.text`. Note that value of `title` is no longer a simple *string* but a set of sub-attributes." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Deprecated in favor of `title.font`." + }, + "titleoffset": { + "valType": "number", + "role": "info", + "dflt": 10, + "editType": "calc", + "description": "Deprecated in favor of `title.offset`." + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + }, + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + } + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "dflt": "\"Open Sans\", verdana, arial, sans-serif" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "dflt": 12 + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "dflt": "#444" + }, + "editType": "calc", + "description": "The default font used for axis & tick labels on this carpet", + "role": "object" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "ysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for y .", + "editType": "none" + }, + "asrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for a .", + "editType": "none" + }, + "bsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for b .", + "editType": "none" + } + } + }, + "scattercarpet": { + "meta": { + "hrName": "scatter_carpet", + "description": "Plots a scatter trace on either the first carpet axis or the carpet axis with a matching `carpet` attribute." + }, + "categories": [ + "svg", + "carpet", + "symbols", + "showLegend", + "carpetDependent", + "zoomScale" + ], + "animatable": false, + "type": "scattercarpet", + "attributes": { + "type": "scattercarpet", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "carpet": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "An identifier for this carpet, so that `scattercarpet` and `contourcarpet` traces can specify a carpet plot on which they lie" + }, + "a": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the a-axis coordinates.", + "role": "data" + }, + "b": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the b-axis coordinates.", + "role": "data" + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `a`, `b` and `text`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (a,b) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b). To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "shape": { + "valType": "enumerated", + "values": [ + "linear", + "spline" + ], + "dflt": "linear", + "role": "style", + "editType": "plot", + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes." + }, + "smoothing": { + "valType": "number", + "min": 0, + "max": 1.3, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape)." + }, + "editType": "calc", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ], + "role": "style", + "editType": "calc", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "marker": { + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity." + }, + "maxdisplayed": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "gradient": { + "type": { + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ], + "arrayOk": true, + "dflt": "none", + "role": "style", + "editType": "calc", + "description": "Sets the type of gradient used to fill the markers" + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical." + }, + "editType": "calc", + "role": "object", + "typesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for type .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the text font.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "a", + "b", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoveron": { + "valType": "flaglist", + "flags": [ + "points", + "fills" + ], + "role": "info", + "editType": "style", + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "asrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for a .", + "editType": "none" + }, + "bsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for b .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "contourcarpet": { + "meta": { + "hrName": "contour_carpet", + "description": "Plots contours on either the first carpet axis or the carpet axis with a matching `carpet` attribute. Data `z` is interpreted as matching that of the corresponding carpet axis." + }, + "categories": [ + "cartesian", + "svg", + "carpet", + "contour", + "symbols", + "showLegend", + "hasLines", + "carpetDependent", + "noHover" + ], + "animatable": false, + "type": "contourcarpet", + "attributes": { + "type": "contourcarpet", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "carpet": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "The `carpet` of the carpet axes on which this contour trace lies" + }, + "z": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the z data.", + "role": "data" + }, + "a": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates.", + "impliedEdits": { + "xtype": "array" + }, + "role": "data" + }, + "a0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "da": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the x coordinate step. See `x0` for more info.", + "impliedEdits": { + "xtype": "scaled" + } + }, + "b": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the y coordinates.", + "impliedEdits": { + "ytype": "array" + }, + "role": "data" + }, + "b0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "db": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the y coordinate step. See `y0` for more info.", + "impliedEdits": { + "ytype": "scaled" + } + }, + "text": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text elements associated with each z value.", + "role": "data" + }, + "hovertext": { + "valType": "data_array", + "editType": "calc", + "description": "Same as `text`.", + "role": "data" + }, + "transpose": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Transposes the z data." + }, + "atype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "If *array*, the heatmap's x coordinates are given by *x* (the default behavior when `x` is provided). If *scaled*, the heatmap's x coordinates are given by *x0* and *dx* (the default behavior when `x` is not provided)." + }, + "btype": { + "valType": "enumerated", + "values": [ + "array", + "scaled" + ], + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "If *array*, the heatmap's y coordinates are given by *y* (the default behavior when `y` is provided) If *scaled*, the heatmap's y coordinates are given by *y0* and *dy* (the default behavior when `y` is not provided)" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "autocontour": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the contour level attributes are picked by an algorithm. If *true*, the number of contour levels can be set in `ncontours`. If *false*, set the contour level attributes in `contours`." + }, + "ncontours": { + "valType": "integer", + "dflt": 15, + "min": 1, + "role": "style", + "editType": "calc", + "description": "Sets the maximum number of contour levels. The actual number of contours will be chosen automatically to be less than or equal to the value of `ncontours`. Has an effect only if `autocontour` is *true* or if `contours.size` is missing." + }, + "contours": { + "type": { + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ], + "dflt": "levels", + "role": "info", + "editType": "calc", + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters." + }, + "start": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the starting contour level value. Must be less than `contours.end`" + }, + "end": { + "valType": "number", + "dflt": null, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the end contour level value. Must be more than `contours.start`" + }, + "size": { + "valType": "number", + "dflt": null, + "min": 0, + "role": "style", + "editType": "plot", + "impliedEdits": { + "^autocontour": false + }, + "description": "Sets the step between each contour level. Must be positive." + }, + "coloring": { + "valType": "enumerated", + "values": [ + "fill", + "lines", + "none" + ], + "dflt": "fill", + "role": "style", + "editType": "calc", + "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace." + }, + "showlines": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the contour lines are drawn. Has an effect only if `contours.coloring` is set to *fill*." + }, + "showlabels": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines whether to label the contour lines with their values." + }, + "labelfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style" + }, + "editType": "plot", + "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", + "role": "object" + }, + "labelformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the contour label formatting rule using d3 formatting mini-language which is very similar to Python, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format" + }, + "operation": { + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ], + "role": "info", + "dflt": "=", + "editType": "calc", + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms." + }, + "value": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound." + }, + "editType": "calc", + "impliedEdits": { + "autocontour": false, + "role": "object" + }, + "role": "object" + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style+colorbars", + "description": "Sets the color of the contour level. Has no effect if `contours.coloring` is set to *lines*." + }, + "width": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style+colorbars", + "description": "Sets the contour line width in (in px) Defaults to *0.5* when `contours.type` is *levels*. Defaults to *2* when `contour.type` is *constraint*." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "smoothing": { + "valType": "number", + "min": 0, + "max": 1.3, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the amount of smoothing for the contour lines, where *0* corresponds to no smoothing." + }, + "editType": "plot", + "role": "object" + }, + "zauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `z`) or the bounds set in `zmin` and `zmax` Defaults to `false` when `zmin` and `zmax` are set by the user." + }, + "zmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as in `z` and if set, `zmax` must be set as well." + }, + "zmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "zauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as in `z` and if set, `zmin` must be set as well." + }, + "zmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `zmin` and/or `zmax` to be equidistant to this point. Value should have the same units as in `z`. Has no effect when `zauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`zmin` and `zmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `zmin` will correspond to the last color in the array and `zmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "zsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for z .", + "editType": "none" + }, + "asrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for a .", + "editType": "none" + }, + "bsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for b .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + } + } + }, + "ohlc": { + "meta": { + "description": "The ohlc (short for Open-High-Low-Close) is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The tip of the lines represent the `low` and `high` values and the horizontal segments represent the `open` and `close` values. Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing items are drawn in green whereas decreasing are drawn in red." + }, + "categories": [ + "cartesian", + "svg", + "showLegend" + ], + "animatable": false, + "type": "ohlc", + "attributes": { + "type": "ohlc", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", + "role": "data" + }, + "open": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the open values.", + "role": "data" + }, + "high": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the high values.", + "role": "data" + }, + "low": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the low values.", + "role": "data" + }, + "close": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the close values.", + "role": "data" + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "[object Object] Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). Note that this style setting can also be set per direction via `increasing.line.dash` and `decreasing.line.dash`." + }, + "editType": "style", + "role": "object" + }, + "increasing": { + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the line color.", + "dflt": "#3D9970" + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "decreasing": { + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the line color.", + "dflt": "#FF4136" + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Same as `text`." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "max": 0.5, + "dflt": 0.3, + "role": "style", + "editType": "calc", + "description": "Sets the width of the open/close tick marks relative to the *x* minimal interval." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "split": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "style", + "description": "Show hover information (open, close, high, low) in separate labels." + }, + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "opensrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for open .", + "editType": "none" + }, + "highsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for high .", + "editType": "none" + }, + "lowsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for low .", + "editType": "none" + }, + "closesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for close .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + } + } + }, + "candlestick": { + "meta": { + "description": "The candlestick is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The boxes represent the spread between the `open` and `close` values and the lines represent the spread between the `low` and `high` values Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing candles are drawn in green whereas decreasing are drawn in red." + }, + "categories": [ + "cartesian", + "svg", + "showLegend", + "candlestick", + "boxLayout" + ], + "animatable": false, + "type": "candlestick", + "attributes": { + "type": "candlestick", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "x": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", + "role": "data" + }, + "open": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the open values.", + "role": "data" + }, + "high": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the high values.", + "role": "data" + }, + "low": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the low values.", + "role": "data" + }, + "close": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the close values.", + "role": "data" + }, + "line": { + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "editType": "style", + "description": "Sets the width (in px) of line bounding the box(es). Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`." + }, + "editType": "style", + "role": "object" + }, + "increasing": { + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the color of line bounding the box(es).", + "dflt": "#3D9970" + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "editType": "style", + "description": "Sets the width (in px) of line bounding the box(es)." + }, + "editType": "style", + "role": "object" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "editType": "style", + "role": "object" + }, + "decreasing": { + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the color of line bounding the box(es).", + "dflt": "#FF4136" + }, + "width": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "editType": "style", + "description": "Sets the width (in px) of line bounding the box(es)." + }, + "editType": "style", + "role": "object" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "editType": "style", + "role": "object" + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Same as `text`." + }, + "whiskerwidth": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets the width of the whiskers relative to the box' width. For example, with 1, the whiskers are as wide as the box(es)." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "split": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "style", + "description": "Show hover information (open, close, high, low) in separate labels." + }, + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "xcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use with `x` date data." + }, + "xaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on." + }, + "yaxis": { + "valType": "subplotid", + "role": "info", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.yaxis2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "xsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for x .", + "editType": "none" + }, + "opensrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for open .", + "editType": "none" + }, + "highsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for high .", + "editType": "none" + }, + "lowsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for low .", + "editType": "none" + }, + "closesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for close .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + } + }, + "layoutAttributes": { + "boxmode": { + "valType": "enumerated", + "values": [ + "group", + "overlay" + ], + "dflt": "overlay", + "role": "info", + "editType": "calc", + "description": "Determines how boxes at the same location coordinate are displayed on the graph. If *group*, the boxes are plotted next to one another centered around the shared location. If *overlay*, the boxes are plotted over one another, you might need to set *opacity* to see them multiple boxes. Has no effect on traces that have *width* set." + }, + "boxgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.3, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between boxes of adjacent location coordinates. Has no effect on traces that have *width* set." + }, + "boxgroupgap": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.3, + "role": "style", + "editType": "calc", + "description": "Sets the gap (in plot fraction) between boxes of the same location coordinate. Has no effect on traces that have *width* set." + } + } + }, + "scatterpolar": { + "meta": { + "hrName": "scatter_polar", + "description": "The scatterpolar trace type encompasses line charts, scatter charts, text charts, and bubble charts in polar coordinates. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays." + }, + "categories": [ + "polar", + "symbols", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "scatterpolar", + "attributes": { + "type": "scatterpolar", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*." + }, + "r": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the radial coordinates", + "role": "data" + }, + "theta": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the angular coordinates", + "role": "data" + }, + "r0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step." + }, + "dr": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the r coordinate step." + }, + "theta0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step." + }, + "dtheta": { + "valType": "number", + "role": "info", + "editType": "calc", + "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates." + }, + "thetaunit": { + "valType": "enumerated", + "values": [ + "radians", + "degrees", + "gradians" + ], + "dflt": "degrees", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `r`, `theta` and `text`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "style", + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "style", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "shape": { + "valType": "enumerated", + "values": [ + "linear", + "spline" + ], + "dflt": "linear", + "role": "style", + "editType": "plot", + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes." + }, + "smoothing": { + "valType": "number", + "min": 0, + "max": 1.3, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape)." + }, + "editType": "calc", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "marker": { + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "maxdisplayed": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "gradient": { + "type": { + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ], + "arrayOk": true, + "dflt": "none", + "role": "style", + "editType": "calc", + "description": "Sets the type of gradient used to fill the markers" + }, + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical." + }, + "editType": "calc", + "role": "object", + "typesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for type .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "cliponaxis": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "plot", + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*." + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the text font.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ], + "role": "style", + "editType": "calc", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterpolar has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "r", + "theta", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoveron": { + "valType": "flaglist", + "flags": [ + "points", + "fills" + ], + "role": "info", + "editType": "style", + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "subplot": { + "valType": "subplotid", + "role": "info", + "dflt": "polar", + "editType": "calc", + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "rsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for r .", + "editType": "none" + }, + "thetasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for theta .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + } + }, + "scatterpolargl": { + "meta": { + "hrName": "scatter_polar_gl", + "description": "The scatterpolargl trace type encompasses line charts, scatter charts, and bubble charts in polar coordinates using the WebGL plotting engine. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays." + }, + "categories": [ + "gl", + "regl", + "polar", + "symbols", + "showLegend", + "scatter-like" + ], + "animatable": false, + "type": "scatterpolargl", + "attributes": { + "type": "scatterpolargl", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "mode": { + "valType": "flaglist", + "flags": [ + "lines", + "markers", + "text" + ], + "extras": [ + "none" + ], + "role": "info", + "editType": "calc", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*." + }, + "r": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the radial coordinates", + "role": "data" + }, + "theta": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the angular coordinates", + "role": "data" + }, + "r0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step." + }, + "dr": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the r coordinate step." + }, + "theta0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step." + }, + "dtheta": { + "valType": "number", + "role": "info", + "editType": "calc", + "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates." + }, + "thetaunit": { + "valType": "enumerated", + "values": [ + "radians", + "degrees", + "gradians" + ], + "dflt": "degrees", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels." + }, + "texttemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "plot", + "description": "Template string used for rendering the information text that appear on points. Note that this will override `textinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. variables `r`, `theta` and `text`.", + "arrayOk": true + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc", + "description": "Sets the line width (in px)." + }, + "shape": { + "valType": "enumerated", + "values": [ + "linear", + "hv", + "vh", + "hvh", + "vhv" + ], + "dflt": "linear", + "role": "style", + "editType": "calc", + "description": "Determines the line shape. The values correspond to step-wise line shapes." + }, + "dash": { + "valType": "enumerated", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "description": "Sets the style of the lines.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "connectgaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected." + }, + "marker": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "calc" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "calc" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "calc" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "calc" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "calc" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "calc" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "calc" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "calc" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "calc" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "calc" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "calc" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "calc", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "calc", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "calc", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "calc", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "calc", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc" + }, + { + "valType": "any", + "editType": "calc" + } + ], + "editType": "calc", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "calc", + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "calc", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "calc", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "calc", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "calc", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "calc" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "calc", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "calc" + }, + "editType": "calc", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "calc" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "calc" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "calc" + } + }, + "editType": "calc", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker size (in px)." + }, + "sizeref": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`." + }, + "sizemin": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points." + }, + "sizemode": { + "valType": "enumerated", + "values": [ + "diameter", + "area" + ], + "dflt": "diameter", + "role": "info", + "editType": "calc", + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the marker opacity." + }, + "line": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "calc", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the lines bounding the marker points." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + } + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "fill": { + "valType": "enumerated", + "values": [ + "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" + ], + "role": "style", + "editType": "calc", + "description": "Sets the area to fill with a solid color. Defaults to *none* unless this trace is stacked, then it gets *tonexty* (*tonextx*) if `orientation` is *v* (*h*) Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other. Traces in a `stackgroup` will only fill to (or be filled to) other traces in the same group. With multiple `stackgroup`s or some traces stacked and some not, if fill-linked traces are not already consecutive, the later ones will be pushed down in the drawing order.", + "dflt": "none" + }, + "fillcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available." + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "arrayOk": true + }, + "editType": "calc", + "description": "Sets the text font.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "r", + "theta", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "size": { + "valType": "number", + "min": 0, + "role": "style", + "editType": "style", + "description": "Sets the marker size of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "subplot": { + "valType": "subplotid", + "role": "info", + "dflt": "polar", + "editType": "calc", + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "rsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for r .", + "editType": "none" + }, + "thetasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for theta .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "texttemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for texttemplate .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + }, + "textpositionsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + } + } + }, + "barpolar": { + "meta": { + "hrName": "bar_polar", + "description": "The data visualized by the radial span of the bars is set in `r`" + }, + "categories": [ + "polar", + "bar", + "showLegend" + ], + "animatable": false, + "type": "barpolar", + "attributes": { + "type": "barpolar", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "selectedpoints": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "r": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the radial coordinates", + "role": "data" + }, + "theta": { + "valType": "data_array", + "editType": "calc+clearAxisTypes", + "description": "Sets the angular coordinates", + "role": "data" + }, + "r0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `r`. Builds a linear space of r coordinates. Use with `dr` where `r0` is the starting coordinate and `dr` the step." + }, + "dr": { + "valType": "number", + "dflt": 1, + "role": "info", + "editType": "calc", + "description": "Sets the r coordinate step." + }, + "theta0": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Alternate to `theta`. Builds a linear space of theta coordinates. Use with `dtheta` where `theta0` is the starting coordinate and `dtheta` the step." + }, + "dtheta": { + "valType": "number", + "role": "info", + "editType": "calc", + "description": "Sets the theta coordinate step. By default, the `dtheta` step equals the subplot's period divided by the length of the `r` coordinates." + }, + "thetaunit": { + "valType": "enumerated", + "values": [ + "radians", + "degrees", + "gradians" + ], + "dflt": "degrees", + "role": "info", + "editType": "calc+clearAxisTypes", + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes." + }, + "base": { + "valType": "any", + "dflt": null, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Sets where the bar base is drawn (in radial axis units). In *stack* barmode, traces that set *base* will be excluded and drawn in *overlay* mode instead." + }, + "offset": { + "valType": "number", + "dflt": null, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Shifts the angular position where the bar is drawn (in *thetatunit* units)." + }, + "width": { + "valType": "number", + "dflt": null, + "min": 0, + "arrayOk": true, + "role": "info", + "editType": "calc", + "description": "Sets the bar angular width (in *thetaunit* units)." + }, + "text": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "calc", + "description": "Sets hover text elements associated with each bar. If a single string, the same string appears over all bars. If an array of string, the items are mapped in order to the this trace's coordinates." + }, + "hovertext": { + "valType": "string", + "role": "info", + "dflt": "", + "arrayOk": true, + "editType": "style", + "description": "Same as `text`." + }, + "marker": { + "line": { + "width": { + "valType": "number", + "min": 0, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0 + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarker.linecolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.line.color`) or the bounds set in `marker.line.cmin` and `marker.line.cmax` Has an effect only if in `marker.line.color`is set to a numerical array. Defaults to `false` when `marker.line.cmin` and `marker.line.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color` and if set, `marker.line.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.line.cmin` and/or `marker.line.cmax` to be equidistant to this point. Has an effect only if in `marker.line.color`is set to a numerical array. Value should have the same units as in `marker.line.color`. Has no effect when `marker.line.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.line.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. Has an effect only if in `marker.line.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.line.color`is set to a numerical array. If true, `marker.line.cmin` will correspond to the last color in the array and `marker.line.cmax` will correspond to the first color." + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "role": "object", + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "editType": "calc", + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here in `marker.color`) or the bounds set in `marker.cmin` and `marker.cmax` Has an effect only if in `marker.color`is set to a numerical array. Defaults to `false` when `marker.cmin` and `marker.cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color` and if set, `marker.cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `marker.cmin` and/or `marker.cmax` to be equidistant to this point. Has an effect only if in `marker.color`is set to a numerical array. Value should have the same units as in `marker.color`. Has no effect when `marker.cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. Has an effect only if in `marker.color`is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. Has an effect only if in `marker.color`is set to a numerical array. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. Has an effect only if in `marker.color`is set to a numerical array. If true, `marker.cmin` will correspond to the last color in the array and `marker.cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace. Has an effect only if in `marker.color`is set to a numerical array." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "coloraxis": { + "valType": "subplotid", + "role": "info", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "dflt": null, + "editType": "calc", + "description": "Sets a reference to a shared color axis. References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc. Settings for these shared color axes are set in the layout, under `layout.coloraxis`, `layout.coloraxis2`, etc. Note that multiple color scales can be linked to the same color axis." + }, + "opacity": { + "valType": "number", + "arrayOk": true, + "dflt": 1, + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the opacity of the bars." + }, + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "r", + "theta", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hovertemplate": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "none", + "description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\". Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format for details on the date formatting syntax. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Anything contained in tag `` is displayed in the secondary box, for example \"{fullData.name}\". To hide the secondary box completely, use an empty tag ``.", + "arrayOk": true + }, + "selected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of selected points." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of selected points." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of selected points." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "unselected": { + "marker": { + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "role": "style", + "editType": "style", + "description": "Sets the marker opacity of unselected points, applied only when a selection exists." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the marker color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "textfont": { + "color": { + "valType": "color", + "role": "style", + "editType": "style", + "description": "Sets the text font color of unselected points, applied only when a selection exists." + }, + "editType": "style", + "role": "object" + }, + "editType": "style", + "role": "object" + }, + "subplot": { + "valType": "subplotid", + "role": "info", + "dflt": "polar", + "editType": "calc", + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on." + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "rsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for r .", + "editType": "none" + }, + "thetasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for theta .", + "editType": "none" + }, + "basesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for base .", + "editType": "none" + }, + "offsetsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for offset .", + "editType": "none" + }, + "widthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for width .", + "editType": "none" + }, + "textsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for text .", + "editType": "none" + }, + "hovertextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "hovertemplatesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hovertemplate .", + "editType": "none" + } + }, + "layoutAttributes": { + "barmode": { + "valType": "enumerated", + "values": [ + "stack", + "overlay" + ], + "dflt": "stack", + "role": "info", + "editType": "calc", + "description": "Determines how bars at the same location coordinate are displayed on the graph. With *stack*, the bars are stacked on top of one another With *overlay*, the bars are plotted over one another, you might need to an *opacity* to see multiple bars." + }, + "bargap": { + "valType": "number", + "dflt": 0.1, + "min": 0, + "max": 1, + "role": "style", + "editType": "calc", + "description": "Sets the gap between bars of adjacent location coordinates. Values are unitless, they represent fractions of the minimum difference in bar positions in the data." + } + } + }, + "area": { + "meta": {}, + "categories": {}, + "animatable": false, + "type": "area", + "attributes": { + "type": "area", + "visible": { + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ], + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "style", + "description": "Determines whether or not an item corresponding to this trace is shown in the legend." + }, + "legendgroup": { + "valType": "string", + "role": "info", + "dflt": "", + "editType": "style", + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items." + }, + "opacity": { + "valType": "number", + "role": "style", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "style", + "description": "Sets the opacity of the trace." + }, + "name": { + "valType": "string", + "role": "info", + "editType": "style", + "description": "Sets the trace name. The trace name appear as the legend item and on hover." + }, + "uid": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions." + }, + "ids": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.", + "role": "data" + }, + "customdata": { + "valType": "data_array", + "editType": "calc", + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "role": "data" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index." + }, + "hoverinfo": { + "valType": "flaglist", + "role": "info", + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "extras": [ + "all", + "none", + "skip" + ], + "arrayOk": true, + "dflt": "all", + "editType": "none", + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of the hover labels for this trace", + "arrayOk": true + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of the hover labels for this trace.", + "arrayOk": true + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "arrayOk": true + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "arrayOk": true + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none", + "arrayOk": true + }, + "editType": "none", + "description": "Sets the font used in hover labels.", + "role": "object", + "familysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for family .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + } + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines", + "arrayOk": true + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "arrayOk": true + }, + "editType": "none", + "role": "object", + "bgcolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none" + }, + "bordercolorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none" + }, + "alignsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for align .", + "editType": "none" + }, + "namelengthsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none" + } + }, + "stream": { + "token": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "editType": "calc", + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details." + }, + "maxpoints": { + "valType": "number", + "min": 0, + "max": 10000, + "dflt": 500, + "role": "info", + "editType": "calc", + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot." + }, + "editType": "calc", + "role": "object" + }, + "transforms": { + "items": { + "transform": { + "editType": "calc", + "description": "An array of operations that manipulate the trace data, for example filtering or sorting the data arrays.", + "role": "object" + } + }, + "role": "object" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves." + }, + "r": { + "valType": "data_array", + "editType": "calc", + "description": "Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the radial coordinates for legacy polar chart only.", + "role": "data" + }, + "t": { + "valType": "data_array", + "editType": "calc", + "description": "Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the angular coordinates for legacy polar chart only.", + "role": "data" + }, + "marker": { + "color": { + "valType": "color", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Area traces are deprecated! Please switch to the *barpolar* trace type. Sets themarkercolor. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set." + }, + "size": { + "valType": "number", + "min": 0, + "dflt": 6, + "arrayOk": true, + "role": "style", + "editType": "calc", + "description": "Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker size (in px)." + }, + "symbol": { + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ], + "dflt": "circle", + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "arrayOk": true, + "role": "style", + "editType": "style", + "description": "Area traces are deprecated! Please switch to the *barpolar* trace type. Sets the marker opacity." + }, + "editType": "calc", + "role": "object", + "colorsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for color .", + "editType": "none" + }, + "sizesrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for size .", + "editType": "none" + }, + "symbolsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none" + }, + "opacitysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none" + } + }, + "idssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none" + }, + "customdatasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + }, + "hoverinfosrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none" + }, + "rsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for r .", + "editType": "none" + }, + "tsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for t .", + "editType": "none" + } + } + } + }, + "layout": { + "layoutAttributes": { + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "dflt": "\"Open Sans\", verdana, arial, sans-serif" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc", + "dflt": 12 + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc", + "dflt": "#444" + }, + "editType": "calc", + "description": "Sets the global font. Note that fonts used in traces and other layout components inherit from the global font.", + "role": "object" + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "layoutstyle", + "description": "Sets the plot's title. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "layoutstyle", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "layoutstyle" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "layoutstyle" + }, + "editType": "layoutstyle", + "description": "Sets the title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "xref": { + "valType": "enumerated", + "dflt": "container", + "values": [ + "container", + "paper" + ], + "role": "info", + "editType": "layoutstyle", + "description": "Sets the container `x` refers to. *container* spans the entire `width` of the plot. *paper* refers to the width of the plotting area only." + }, + "yref": { + "valType": "enumerated", + "dflt": "container", + "values": [ + "container", + "paper" + ], + "role": "info", + "editType": "layoutstyle", + "description": "Sets the container `y` refers to. *container* spans the entire `height` of the plot. *paper* refers to the height of the plotting area only." + }, + "x": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0.5, + "role": "style", + "editType": "layoutstyle", + "description": "Sets the x position with respect to `xref` in normalized coordinates from *0* (left) to *1* (right)." + }, + "y": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": "auto", + "role": "style", + "editType": "layoutstyle", + "description": "Sets the y position with respect to `yref` in normalized coordinates from *0* (bottom) to *1* (top). *auto* places the baseline of the title onto the vertical center of the top margin." + }, + "xanchor": { + "valType": "enumerated", + "dflt": "auto", + "values": [ + "auto", + "left", + "center", + "right" + ], + "role": "info", + "editType": "layoutstyle", + "description": "Sets the title's horizontal alignment with respect to its x position. *left* means that the title starts at x, *right* means that the title ends at x and *center* means that the title's center is at x. *auto* divides `xref` by three and calculates the `xanchor` value automatically based on the value of `x`." + }, + "yanchor": { + "valType": "enumerated", + "dflt": "auto", + "values": [ + "auto", + "top", + "middle", + "bottom" + ], + "role": "info", + "editType": "layoutstyle", + "description": "Sets the title's vertical alignment with respect to its y position. *top* means that the title's cap line is at y, *bottom* means that the title's baseline is at y and *middle* means that the title's midline is at y. *auto* divides `yref` by three and calculates the `yanchor` value automatically based on the value of `y`." + }, + "pad": { + "t": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "layoutstyle", + "description": "The amount of padding (in px) along the top of the component." + }, + "r": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "layoutstyle", + "description": "The amount of padding (in px) on the right side of the component." + }, + "b": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "layoutstyle", + "description": "The amount of padding (in px) along the bottom of the component." + }, + "l": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "layoutstyle", + "description": "The amount of padding (in px) on the left side of the component." + }, + "editType": "layoutstyle", + "description": "Sets the padding of the title. Each padding value only applies when the corresponding `xanchor`/`yanchor` value is set accordingly. E.g. for left padding to take effect, `xanchor` must be set to *left*. The same rule applies if `xanchor`/`yanchor` is determined automatically. Padding is muted if the respective anchor value is *middle*/*center*.", + "role": "object" + }, + "editType": "layoutstyle", + "role": "object" + }, + "autosize": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "none", + "description": "Determines whether or not a layout width or height that has been left undefined by the user is initialized on each relayout. Note that, regardless of this attribute, an undefined layout width or height is always initialized on the first call to plot." + }, + "width": { + "valType": "number", + "role": "info", + "min": 10, + "dflt": 700, + "editType": "plot", + "description": "Sets the plot's width (in px)." + }, + "height": { + "valType": "number", + "role": "info", + "min": 10, + "dflt": 450, + "editType": "plot", + "description": "Sets the plot's height (in px)." + }, + "margin": { + "l": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 80, + "editType": "plot", + "description": "Sets the left margin (in px)." + }, + "r": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 80, + "editType": "plot", + "description": "Sets the right margin (in px)." + }, + "t": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 100, + "editType": "plot", + "description": "Sets the top margin (in px)." + }, + "b": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 80, + "editType": "plot", + "description": "Sets the bottom margin (in px)." + }, + "pad": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 0, + "editType": "plot", + "description": "Sets the amount of padding (in px) between the plotting area and the axis lines" + }, + "autoexpand": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Turns on/off margin expansion computations. Legends, colorbars, updatemenus, sliders, axis rangeselector and rangeslider are allowed to push the margins by defaults." + }, + "editType": "plot", + "role": "object" + }, + "paper_bgcolor": { + "valType": "color", + "role": "style", + "dflt": "#fff", + "editType": "plot", + "description": "Sets the color of paper where the graph is drawn." + }, + "plot_bgcolor": { + "valType": "color", + "role": "style", + "dflt": "#fff", + "editType": "layoutstyle", + "description": "Sets the color of plotting area in-between x and y axes." + }, + "separators": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "Sets the decimal and thousand separators. For example, *. * puts a '.' before decimals and a space between thousands. In English locales, dflt is *.,* but other locales may alter this default." + }, + "hidesources": { + "valType": "boolean", + "role": "info", + "dflt": false, + "editType": "plot", + "description": "Determines whether or not a text link citing the data source is placed at the bottom-right cored of the figure. Has only an effect only on graphs that have been generated via forked graphs from the plotly service (at https://plot.ly or on-premise)." + }, + "showlegend": { + "valType": "boolean", + "role": "info", + "editType": "legend", + "description": "Determines whether or not a legend is drawn. Default is `true` if there is a trace to show and any of these: a) Two or more traces would by default be shown in the legend. b) One pie trace is shown in the legend. c) One trace is explicitly given with `showlegend: true`." + }, + "colorway": { + "valType": "colorlist", + "dflt": [ + "#1f77b4", + "#ff7f0e", + "#2ca02c", + "#d62728", + "#9467bd", + "#8c564b", + "#e377c2", + "#7f7f7f", + "#bcbd22", + "#17becf" + ], + "role": "style", + "editType": "calc", + "description": "Sets the default trace colors." + }, + "datarevision": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data." + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Used to allow user interactions with the plot to persist after `Plotly.react` calls that are unaware of these interactions. If `uirevision` is omitted, or if it is given and it changed from the previous `Plotly.react` call, the exact new figure is used. If `uirevision` is truthy and did NOT change, any attribute that has been affected by user interactions and did not receive a different value in the new figure will keep the interaction value. `layout.uirevision` attribute serves as the default for `uirevision` attributes in various sub-containers. For finer control you can set these sub-attributes directly. For example, if your app separately controls the data on the x and y axes you might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`. Then if only the y data is changed, you can update `yaxis.uirevision=*quantity*` and the y axis range will reset but the x axis range will retain any user-driven zoom." + }, + "editrevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in `editable: true` configuration, other than trace names and axis titles. Defaults to `layout.uirevision`." + }, + "selectionrevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in selected points from all traces." + }, + "template": { + "valType": "any", + "role": "info", + "editType": "calc", + "description": "Default attributes to be applied to the plot. Templates can be created from existing plots using `Plotly.makeTemplate`, or created manually. They should be objects with format: `{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}` `layoutTemplate` and `traceTemplate` are objects matching the attribute structure of `layout` and a data trace. Trace templates are applied cyclically to traces of each type. Container arrays (eg `annotations`) have special handling: An object ending in `defaults` (eg `annotationdefaults`) is applied to each array item. But if an item has a `templateitemname` key we look in the template array for an item with matching `name` and apply that instead. If no matching `name` is found we mark the item invisible. Any named template item not referenced is appended to the end of the array, so you can use this for a watermark annotation or a logo image, for example. To omit one of these items on the plot, make an item with matching `templateitemname` and `visible: false`." + }, + "modebar": { + "orientation": { + "valType": "enumerated", + "values": [ + "v", + "h" + ], + "dflt": "h", + "role": "info", + "editType": "modebar", + "description": "Sets the orientation of the modebar." + }, + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "modebar", + "description": "Sets the background color of the modebar." + }, + "color": { + "valType": "color", + "role": "style", + "editType": "modebar", + "description": "Sets the color of the icons in the modebar." + }, + "activecolor": { + "valType": "color", + "role": "style", + "editType": "modebar", + "description": "Sets the color of the active or hovered on icons in the modebar." + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes related to the modebar, including `hovermode`, `dragmode`, and `showspikes` at both the root level and inside subplots. Defaults to `layout.uirevision`." + }, + "editType": "modebar", + "role": "object" + }, + "meta": { + "valType": "any", + "arrayOk": true, + "role": "info", + "editType": "plot", + "description": "Assigns extra meta information that can be used in various `text` attributes. Attributes such as the graph, axis and colorbar `title.text`, annotation `text` `trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text all support `meta`. One can access `meta` fields using template strings: `%{meta[i]}` where `i` is the index of the `meta` item in question. `meta` can also be an object for example `{key: value}` which can be accessed %{meta[key]}." + }, + "transition": { + "duration": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 500, + "editType": "none", + "description": "The duration of the transition, in milliseconds. If equal to zero, updates are synchronous." + }, + "easing": { + "valType": "enumerated", + "dflt": "cubic-in-out", + "values": [ + "linear", + "quad", + "cubic", + "sin", + "exp", + "circle", + "elastic", + "back", + "bounce", + "linear-in", + "quad-in", + "cubic-in", + "sin-in", + "exp-in", + "circle-in", + "elastic-in", + "back-in", + "bounce-in", + "linear-out", + "quad-out", + "cubic-out", + "sin-out", + "exp-out", + "circle-out", + "elastic-out", + "back-out", + "bounce-out", + "linear-in-out", + "quad-in-out", + "cubic-in-out", + "sin-in-out", + "exp-in-out", + "circle-in-out", + "elastic-in-out", + "back-in-out", + "bounce-in-out" + ], + "role": "info", + "editType": "none", + "description": "The easing function used for the transition" + }, + "ordering": { + "valType": "enumerated", + "values": [ + "layout first", + "traces first" + ], + "dflt": "layout first", + "role": "info", + "editType": "none", + "description": "Determines whether the figure's layout or traces smoothly transitions during updates that make both traces and layout change." + }, + "description": "Sets transition options used during Plotly.react updates.", + "editType": "none", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "layoutstyle", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the contents of the title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "layoutstyle", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "layoutstyle" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "layoutstyle" + }, + "editType": "layoutstyle", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "clickmode": { + "valType": "flaglist", + "role": "info", + "flags": [ + "event", + "select" + ], + "dflt": "event", + "editType": "plot", + "extras": [ + "none" + ], + "description": "Determines the mode of single click interactions. *event* is the default value and emits the `plotly_click` event. In addition this mode emits the `plotly_selected` event in drag modes *lasso* and *select*, but with no event data attached (kept for compatibility reasons). The *select* flag enables selecting single data points via click. This mode also supports persistent selections, meaning that pressing Shift while clicking, adds to / subtracts from an existing selection. *select* with `hovermode`: *x* can be confusing, consider explicitly setting `hovermode`: *closest* when using this feature. Selection events are sent accordingly as long as *event* flag is set as well. When the *event* flag is missing, `plotly_click` and `plotly_selected` events are not fired." + }, + "dragmode": { + "valType": "enumerated", + "role": "info", + "values": [ + "zoom", + "pan", + "select", + "lasso", + "orbit", + "turntable", + false + ], + "dflt": "zoom", + "editType": "modebar", + "description": "Determines the mode of drag interactions. *select* and *lasso* apply only to scatter traces with markers or text. *orbit* and *turntable* apply only to 3D scenes." + }, + "hovermode": { + "valType": "enumerated", + "role": "info", + "values": [ + "x", + "y", + "closest", + false + ], + "editType": "modebar", + "description": "Determines the mode of hover interactions. If `clickmode` includes the *select* flag, `hovermode` defaults to *closest*. If `clickmode` lacks the *select* flag, it defaults to *x* or *y* (depending on the trace's `orientation` value) for plots based on cartesian coordinates. For anything else the default value is *closest*." + }, + "hoverdistance": { + "valType": "integer", + "min": -1, + "dflt": 20, + "role": "info", + "editType": "none", + "description": "Sets the default distance (in pixels) to look for data to add hover labels (-1 means no cutoff, 0 means no looking for data). This is only a real distance for hovering on point-like objects, like scatter points. For area-like objects (bars, scatter fills, etc) hovering is on inside the area and off outside, but these objects will not supersede hover on point-like objects in case of conflict." + }, + "spikedistance": { + "valType": "integer", + "min": -1, + "dflt": 20, + "role": "info", + "editType": "none", + "description": "Sets the default distance (in pixels) to look for data to draw spikelines to (-1 means no cutoff, 0 means no looking for data). As with hoverdistance, distance does not apply to area-like objects. In addition, some objects can be hovered on but will not generate spikelines, such as scatter fills." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the background color of all hover labels on graph" + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "none", + "description": "Sets the border color of all hover labels on graph." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "none", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "dflt": "Arial, sans-serif" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "none", + "dflt": 13 + }, + "color": { + "valType": "color", + "role": "style", + "editType": "none" + }, + "editType": "none", + "description": "Sets the default hover label font used by all traces on the graph.", + "role": "object" + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ], + "dflt": "auto", + "role": "style", + "editType": "none", + "description": "Sets the horizontal alignment of the text content within hover label box. Has an effect only if the hover label text spans more two or more lines" + }, + "namelength": { + "valType": "integer", + "min": -1, + "dflt": 15, + "role": "style", + "editType": "none", + "description": "Sets the default length (in number of characters) of the trace name in the hover labels for all traces. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis." + }, + "editType": "none", + "role": "object" + }, + "selectdirection": { + "valType": "enumerated", + "role": "info", + "values": [ + "h", + "v", + "d", + "any" + ], + "dflt": "any", + "description": "When \"dragmode\" is set to \"select\", this limits the selection of the drag to horizontal, vertical or diagonal. \"h\" only allows horizontal selection, \"v\" only vertical, \"d\" only diagonal and \"any\" sets no limit.", + "editType": "none" + }, + "grid": { + "rows": { + "valType": "integer", + "min": 1, + "role": "info", + "editType": "plot", + "description": "The number of rows in the grid. If you provide a 2D `subplots` array or a `yaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots." + }, + "roworder": { + "valType": "enumerated", + "values": [ + "top to bottom", + "bottom to top" + ], + "dflt": "top to bottom", + "role": "info", + "editType": "plot", + "description": "Is the first row the top or the bottom? Note that columns are always enumerated from left to right." + }, + "columns": { + "valType": "integer", + "min": 1, + "role": "info", + "editType": "plot", + "description": "The number of columns in the grid. If you provide a 2D `subplots` array, the length of its longest row is used as the default. If you give an `xaxes` array, its length is used as the default. But it's also possible to have a different length, if you want to leave a row at the end for non-cartesian subplots." + }, + "subplots": { + "valType": "info_array", + "freeLength": true, + "dimensions": 2, + "items": { + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?$/", + "" + ], + "editType": "plot" + }, + "role": "info", + "editType": "plot", + "description": "Used for freeform grids, where some axes may be shared across subplots but others are not. Each entry should be a cartesian subplot id, like *xy* or *x3y2*, or ** to leave that cell empty. You may reuse x axes within the same column, and y axes within the same row. Non-cartesian subplots and traces that support `domain` can place themselves in this grid separately using the `gridcell` attribute." + }, + "xaxes": { + "valType": "info_array", + "freeLength": true, + "items": { + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?$/", + "" + ], + "editType": "plot" + }, + "role": "info", + "editType": "plot", + "description": "Used with `yaxes` when the x and y axes are shared across columns and rows. Each entry should be an x axis id like *x*, *x2*, etc., or ** to not put an x axis in that column. Entries other than ** must be unique. Ignored if `subplots` is present. If missing but `yaxes` is present, will generate consecutive IDs." + }, + "yaxes": { + "valType": "info_array", + "freeLength": true, + "items": { + "valType": "enumerated", + "values": [ + "/^y([2-9]|[1-9][0-9]+)?$/", + "" + ], + "editType": "plot" + }, + "role": "info", + "editType": "plot", + "description": "Used with `yaxes` when the x and y axes are shared across columns and rows. Each entry should be an y axis id like *y*, *y2*, etc., or ** to not put a y axis in that row. Entries other than ** must be unique. Ignored if `subplots` is present. If missing but `xaxes` is present, will generate consecutive IDs." + }, + "pattern": { + "valType": "enumerated", + "values": [ + "independent", + "coupled" + ], + "dflt": "coupled", + "role": "info", + "editType": "plot", + "description": "If no `subplots`, `xaxes`, or `yaxes` are given but we do have `rows` and `columns`, we can generate defaults using consecutive axis IDs, in two ways: *coupled* gives one x axis per column and one y axis per row. *independent* uses a new xy pair for each cell, left-to-right across each row then iterating rows according to `roworder`." + }, + "xgap": { + "valType": "number", + "min": 0, + "max": 1, + "role": "info", + "editType": "plot", + "description": "Horizontal space between grid cells, expressed as a fraction of the total width available to one cell. Defaults to 0.1 for coupled-axes grids and 0.2 for independent grids." + }, + "ygap": { + "valType": "number", + "min": 0, + "max": 1, + "role": "info", + "editType": "plot", + "description": "Vertical space between grid cells, expressed as a fraction of the total height available to one cell. Defaults to 0.1 for coupled-axes grids and 0.3 for independent grids." + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this grid subplot (in plot fraction). The first and last cells end exactly at the domain edges, with no grout around the edges." + }, + "editType": "plot", + "role": "object" + }, + "xside": { + "valType": "enumerated", + "values": [ + "bottom", + "bottom plot", + "top plot", + "top" + ], + "dflt": "bottom plot", + "role": "info", + "editType": "plot", + "description": "Sets where the x axis labels and titles go. *bottom* means the very bottom of the grid. *bottom plot* is the lowest plot that each x axis is used in. *top* and *top plot* are similar." + }, + "yside": { + "valType": "enumerated", + "values": [ + "left", + "left plot", + "right plot", + "right" + ], + "dflt": "left plot", + "role": "info", + "editType": "plot", + "description": "Sets where the y axis labels and titles go. *left* means the very left edge of the grid. *left plot* is the leftmost plot that each y axis is used in. *right* and *right plot* are similar." + }, + "editType": "plot", + "role": "object" + }, + "calendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the default calendar system to use for interpreting and displaying dates throughout the plot." + }, + "xaxis": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "ticks", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "ticks", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "ticks" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "ticks" + }, + "editType": "ticks", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "ticks", + "role": "object" + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category", + "multicategory" + ], + "dflt": "-", + "role": "info", + "editType": "calc", + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "info", + "editType": "axrange", + "impliedEdits": {}, + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ], + "dflt": "normal", + "role": "info", + "editType": "plot", + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "anim": true + }, + { + "valType": "any", + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "anim": true + } + ], + "editType": "axrange", + "impliedEdits": { + "autorange": false + }, + "anim": true, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "fixedrange": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled." + }, + "scaleanchor": { + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "plot", + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden." + }, + "scaleratio": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "info", + "editType": "plot", + "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal." + }, + "constrain": { + "valType": "enumerated", + "values": [ + "range", + "domain" + ], + "dflt": "range", + "role": "info", + "editType": "plot", + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range* (default), or by decreasing the *domain*." + }, + "constraintoward": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right", + "top", + "middle", + "bottom" + ], + "role": "info", + "editType": "plot", + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes." + }, + "matches": { + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "ticks", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "ticks", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "ticks", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "ticks", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "ticks", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "tickson": { + "valType": "enumerated", + "values": [ + "labels", + "boundaries" + ], + "role": "info", + "dflt": "labels", + "editType": "ticks", + "description": "Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels." + }, + "mirror": { + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ], + "dflt": false, + "role": "style", + "editType": "ticks+layoutstyle", + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "ticks", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "ticks", + "description": "Determines whether or not the tick labels are drawn." + }, + "automargin": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "ticks", + "description": "Determines whether long tick labels automatically grow the figure margins." + }, + "showspikes": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "modebar", + "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest" + }, + "spikecolor": { + "valType": "color", + "dflt": null, + "role": "style", + "editType": "none", + "description": "Sets the spike color. If undefined, will use the series color" + }, + "spikethickness": { + "valType": "number", + "dflt": 3, + "role": "style", + "editType": "none", + "description": "Sets the width (in px) of the zero line." + }, + "spikedash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "dash", + "role": "style", + "editType": "none", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "spikemode": { + "valType": "flaglist", + "flags": [ + "toaxis", + "across", + "marker" + ], + "role": "style", + "dflt": "toaxis", + "editType": "none", + "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on" + }, + "spikesnap": { + "valType": "enumerated", + "values": [ + "data", + "cursor" + ], + "dflt": "data", + "role": "style", + "editType": "none", + "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "ticks", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "ticks" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "ticks" + }, + "editType": "ticks", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "ticks", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "ticks", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "ticks", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "ticks", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "ticks", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "ticks", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "ticks", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "ticks" + }, + { + "valType": "any", + "editType": "ticks" + } + ], + "editType": "ticks", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "ticks", + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "ticks+layoutstyle", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "layoutstyle", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "ticks+layoutstyle", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "ticks", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark." + }, + "gridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "ticks", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the width (in px) of the grid lines." + }, + "zeroline": { + "valType": "boolean", + "role": "style", + "editType": "ticks", + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines." + }, + "zerolinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets the line color of the zero line." + }, + "zerolinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the width (in px) of the zero line." + }, + "showdividers": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "ticks", + "description": "Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes." + }, + "dividercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets the color of the dividers Only has an effect on *multicategory* axes." + }, + "dividerwidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the width (in px) of the dividers Only has an effect on *multicategory* axes." + }, + "anchor": { + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "plot", + "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`." + }, + "side": { + "valType": "enumerated", + "values": [ + "top", + "bottom", + "left", + "right" + ], + "role": "info", + "editType": "plot", + "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area." + }, + "overlaying": { + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "plot", + "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible." + }, + "layer": { + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ], + "dflt": "above traces", + "role": "info", + "editType": "plot", + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis." + }, + "domain": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "description": "Sets the domain of this axis (in plot fraction)." + }, + "position": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "median ascending", + "median descending" + ], + "dflt": "trace", + "role": "info", + "editType": "calc", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`." + }, + "editType": "calc", + "_deprecated": { + "autotick": { + "valType": "boolean", + "role": "info", + "editType": "ticks", + "description": "Obsolete. Set `tickmode` to *auto* for old `autotick` *true* behavior. Set `tickmode` to *linear* for `autotick` *false*." + }, + "title": { + "valType": "string", + "role": "info", + "editType": "ticks", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "ticks", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "ticks" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "ticks" + }, + "editType": "ticks", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "rangeslider": { + "bgcolor": { + "valType": "color", + "dflt": "#fff", + "role": "style", + "editType": "plot", + "description": "Sets the background color of the range slider." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the border color of the range slider." + }, + "borderwidth": { + "valType": "integer", + "dflt": 0, + "min": 0, + "role": "style", + "editType": "plot", + "description": "Sets the border width of the range slider." + }, + "autorange": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the range slider range is computed in relation to the input data. If `range` is provided, then `autorange` is set to *false*." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "calc", + "impliedEdits": { + "^autorange": false + } + }, + { + "valType": "any", + "editType": "calc", + "impliedEdits": { + "^autorange": false + } + } + ], + "editType": "calc", + "impliedEdits": { + "autorange": false + }, + "description": "Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "thickness": { + "valType": "number", + "dflt": 0.15, + "min": 0, + "max": 1, + "role": "style", + "editType": "plot", + "description": "The height of the range slider as a fraction of the total plot area height." + }, + "visible": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "calc", + "description": "Determines whether or not the range slider will be visible. If visible, perpendicular axes will be set to `fixedrange`" + }, + "editType": "calc", + "yaxis": { + "_isSubplotObj": true, + "rangemode": { + "valType": "enumerated", + "values": [ + "auto", + "fixed", + "match" + ], + "dflt": "match", + "role": "style", + "editType": "calc", + "description": "Determines whether or not the range of this axis in the rangeslider use the same value than in the main plot when zooming in/out. If *auto*, the autorange will be used. If *fixed*, the `range` is used. If *match*, the current range of the corresponding y-axis on the main subplot is used." + }, + "range": { + "valType": "info_array", + "role": "style", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "Sets the range of this axis for the rangeslider." + }, + "editType": "calc", + "role": "object" + }, + "role": "object" + }, + "rangeselector": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "Determines whether or not this range selector is visible. Note that range selectors are only available for x axes of `type` set to or auto-typed to *date*." + }, + "buttons": { + "items": { + "button": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this button is visible." + }, + "step": { + "valType": "enumerated", + "role": "info", + "values": [ + "month", + "year", + "day", + "hour", + "minute", + "second", + "all" + ], + "dflt": "month", + "editType": "plot", + "description": "The unit of measurement that the `count` value will set the range by." + }, + "stepmode": { + "valType": "enumerated", + "role": "info", + "values": [ + "backward", + "todate" + ], + "dflt": "backward", + "editType": "plot", + "description": "Sets the range update mode. If *backward*, the range update shifts the start of range back *count* times *step* milliseconds. If *todate*, the range update shifts the start of range back to the first timestamp from *count* times *step* milliseconds back. For example, with `step` set to *year* and `count` set to *1* the range update shifts the start of the range back to January 01 of the current year. Month and year *todate* are currently available only for the built-in (Gregorian) calendar." + }, + "count": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 1, + "editType": "plot", + "description": "Sets the number of steps to take to update the range. Use with `step` to specify the update interval." + }, + "label": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the text label to appear on the button." + }, + "editType": "plot", + "description": "Sets the specifications for each buttons. By default, a range selector comes with no buttons.", + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "x": { + "valType": "number", + "min": -2, + "max": 3, + "role": "style", + "editType": "plot", + "description": "Sets the x position (in normalized coordinates) of the range selector." + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ], + "dflt": "left", + "role": "info", + "editType": "plot", + "description": "Sets the range selector's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector." + }, + "y": { + "valType": "number", + "min": -2, + "max": 3, + "role": "style", + "editType": "plot", + "description": "Sets the y position (in normalized coordinates) of the range selector." + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ], + "dflt": "bottom", + "role": "info", + "editType": "plot", + "description": "Sets the range selector's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the font of the range selector button text.", + "role": "object" + }, + "bgcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "plot", + "description": "Sets the background color of the range selector buttons." + }, + "activecolor": { + "valType": "color", + "role": "style", + "editType": "plot", + "description": "Sets the background color of the active range selector button." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the color of the border enclosing the range selector." + }, + "borderwidth": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the border enclosing the range selector." + }, + "editType": "plot", + "role": "object" + }, + "calendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`" + }, + "_isSubplotObj": true, + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + }, + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + } + }, + "yaxis": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "ticks", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "ticks", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "ticks" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "ticks" + }, + "editType": "ticks", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "ticks", + "role": "object" + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category", + "multicategory" + ], + "dflt": "-", + "role": "info", + "editType": "calc", + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "info", + "editType": "axrange", + "impliedEdits": {}, + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ], + "dflt": "normal", + "role": "info", + "editType": "plot", + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "anim": true + }, + { + "valType": "any", + "editType": "axrange", + "impliedEdits": { + "^autorange": false + }, + "anim": true + } + ], + "editType": "axrange", + "impliedEdits": { + "autorange": false + }, + "anim": true, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "fixedrange": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled." + }, + "scaleanchor": { + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "plot", + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden." + }, + "scaleratio": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "info", + "editType": "plot", + "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal." + }, + "constrain": { + "valType": "enumerated", + "values": [ + "range", + "domain" + ], + "dflt": "range", + "role": "info", + "editType": "plot", + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range* (default), or by decreasing the *domain*." + }, + "constraintoward": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right", + "top", + "middle", + "bottom" + ], + "role": "info", + "editType": "plot", + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes." + }, + "matches": { + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis will match the range of the corresponding axis in data-coordinates space. Moreover, matching axes share auto-range values, category lists and histogram auto-bins. Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint is currently forbidden. Moreover, note that matching axes must have the same `type`." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "ticks", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "ticks", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "ticks", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "ticks", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "ticks", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "tickson": { + "valType": "enumerated", + "values": [ + "labels", + "boundaries" + ], + "role": "info", + "dflt": "labels", + "editType": "ticks", + "description": "Determines where ticks and grid lines are drawn with respect to their corresponding tick labels. Only has an effect for axes of `type` *category* or *multicategory*. When set to *boundaries*, ticks and grid lines are drawn half a category to the left/bottom of labels." + }, + "mirror": { + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ], + "dflt": false, + "role": "style", + "editType": "ticks+layoutstyle", + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "ticks", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "ticks", + "description": "Determines whether or not the tick labels are drawn." + }, + "automargin": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "ticks", + "description": "Determines whether long tick labels automatically grow the figure margins." + }, + "showspikes": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "modebar", + "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest" + }, + "spikecolor": { + "valType": "color", + "dflt": null, + "role": "style", + "editType": "none", + "description": "Sets the spike color. If undefined, will use the series color" + }, + "spikethickness": { + "valType": "number", + "dflt": 3, + "role": "style", + "editType": "none", + "description": "Sets the width (in px) of the zero line." + }, + "spikedash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "dash", + "role": "style", + "editType": "none", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "spikemode": { + "valType": "flaglist", + "flags": [ + "toaxis", + "across", + "marker" + ], + "role": "style", + "dflt": "toaxis", + "editType": "none", + "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on" + }, + "spikesnap": { + "valType": "enumerated", + "values": [ + "data", + "cursor" + ], + "dflt": "data", + "role": "style", + "editType": "none", + "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "ticks", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "ticks" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "ticks" + }, + "editType": "ticks", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "ticks", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "ticks", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "ticks", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "ticks", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "ticks", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "ticks", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "ticks", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "ticks" + }, + { + "valType": "any", + "editType": "ticks" + } + ], + "editType": "ticks", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "ticks", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "ticks", + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "ticks+layoutstyle", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "layoutstyle", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "ticks+layoutstyle", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "ticks", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark." + }, + "gridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "ticks", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the width (in px) of the grid lines." + }, + "zeroline": { + "valType": "boolean", + "role": "style", + "editType": "ticks", + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines." + }, + "zerolinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets the line color of the zero line." + }, + "zerolinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the width (in px) of the zero line." + }, + "showdividers": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "ticks", + "description": "Determines whether or not a dividers are drawn between the category levels of this axis. Only has an effect on *multicategory* axes." + }, + "dividercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "ticks", + "description": "Sets the color of the dividers Only has an effect on *multicategory* axes." + }, + "dividerwidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "ticks", + "description": "Sets the width (in px) of the dividers Only has an effect on *multicategory* axes." + }, + "anchor": { + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "plot", + "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`." + }, + "side": { + "valType": "enumerated", + "values": [ + "top", + "bottom", + "left", + "right" + ], + "role": "info", + "editType": "plot", + "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area." + }, + "overlaying": { + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "plot", + "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis, with traces and axes visible for both axes. If *false*, this axis does not overlay any same-letter axes. In this case, for axes with overlapping domains only the highest-numbered axis will be visible." + }, + "layer": { + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ], + "dflt": "above traces", + "role": "info", + "editType": "plot", + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis." + }, + "domain": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "description": "Sets the domain of this axis (in plot fraction)." + }, + "position": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "median ascending", + "median descending" + ], + "dflt": "trace", + "role": "info", + "editType": "calc", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, and `title` if in `editable: true` configuration. Defaults to `layout.uirevision`." + }, + "editType": "calc", + "_deprecated": { + "autotick": { + "valType": "boolean", + "role": "info", + "editType": "ticks", + "description": "Obsolete. Set `tickmode` to *auto* for old `autotick` *true* behavior. Set `tickmode` to *linear* for `autotick` *false*." + }, + "title": { + "valType": "string", + "role": "info", + "editType": "ticks", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "ticks", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "ticks" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "ticks" + }, + "editType": "ticks", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "calendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`" + }, + "_isSubplotObj": true, + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + }, + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + } + }, + "ternary": { + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this ternary subplot (in plot fraction).", + "editType": "plot" + }, + "y": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this ternary subplot (in plot fraction).", + "editType": "plot" + }, + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this row in the grid for this ternary subplot .", + "editType": "plot" + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this column in the grid for this ternary subplot .", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "#fff", + "description": "Set the background color of the subplot", + "editType": "plot" + }, + "sum": { + "valType": "number", + "role": "info", + "dflt": 1, + "min": 0, + "description": "The number each triplet should sum to, and the maximum range of each axis", + "editType": "plot" + }, + "aaxis": { + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 1, + "dflt": 6, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true + }, + "gridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "layer": { + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ], + "dflt": "above traces", + "role": "info", + "editType": "plot", + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis." + }, + "min": { + "valType": "number", + "dflt": 0, + "role": "info", + "min": 0, + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "editType": "plot" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "editType": "plot", + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`." + }, + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "baxis": { + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 1, + "dflt": 6, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true + }, + "gridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "layer": { + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ], + "dflt": "above traces", + "role": "info", + "editType": "plot", + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis." + }, + "min": { + "valType": "number", + "dflt": 0, + "role": "info", + "min": 0, + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "editType": "plot" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "editType": "plot", + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`." + }, + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "caxis": { + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 1, + "dflt": 6, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true + }, + "gridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "layer": { + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ], + "dflt": "above traces", + "role": "info", + "editType": "plot", + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis." + }, + "min": { + "valType": "number", + "dflt": 0, + "role": "info", + "min": 0, + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "editType": "plot" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "editType": "plot", + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `min`, and `title` if in `editable: true` configuration. Defaults to `ternary.uirevision`." + }, + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "editType": "plot", + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `min` and `title`, if not overridden in the individual axes. Defaults to `layout.uirevision`." + }, + "_isSubplotObj": true, + "role": "object" + }, + "scene": { + "_arrayAttrRegexps": [ + {} + ], + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "editType": "plot" + }, + "camera": { + "up": { + "x": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "camera" + }, + "y": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "camera" + }, + "z": { + "valType": "number", + "role": "info", + "dflt": 1, + "editType": "camera" + }, + "editType": "camera", + "description": "Sets the (x,y,z) components of the 'up' camera vector. This vector determines the up direction of this scene with respect to the page. The default is *{x: 0, y: 0, z: 1}* which means that the z axis points up.", + "role": "object" + }, + "center": { + "x": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "camera" + }, + "y": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "camera" + }, + "z": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "camera" + }, + "editType": "camera", + "description": "Sets the (x,y,z) components of the 'center' camera vector This vector determines the translation (x,y,z) space about the center of this scene. By default, there is no such translation.", + "role": "object" + }, + "eye": { + "x": { + "valType": "number", + "role": "info", + "dflt": 1.25, + "editType": "camera" + }, + "y": { + "valType": "number", + "role": "info", + "dflt": 1.25, + "editType": "camera" + }, + "z": { + "valType": "number", + "role": "info", + "dflt": 1.25, + "editType": "camera" + }, + "editType": "camera", + "description": "Sets the (x,y,z) components of the 'eye' camera vector. This vector determines the view point about the origin of this scene.", + "role": "object" + }, + "projection": { + "type": { + "valType": "enumerated", + "role": "info", + "values": [ + "perspective", + "orthographic" + ], + "dflt": "perspective", + "editType": "calc", + "description": "Sets the projection type. The projection type could be either *perspective* or *orthographic*. The default is *perspective*." + }, + "editType": "calc", + "role": "object" + }, + "editType": "camera", + "role": "object" + }, + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this scene subplot (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this scene subplot (in plot fraction)." + }, + "editType": "plot", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "If there is a layout grid, use the domain for this row in the grid for this scene subplot ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "If there is a layout grid, use the domain for this column in the grid for this scene subplot ." + }, + "role": "object" + }, + "aspectmode": { + "valType": "enumerated", + "role": "info", + "values": [ + "auto", + "cube", + "data", + "manual" + ], + "dflt": "auto", + "editType": "plot", + "impliedEdits": {}, + "description": "If *cube*, this scene's axes are drawn as a cube, regardless of the axes' ranges. If *data*, this scene's axes are drawn in proportion with the axes' ranges. If *manual*, this scene's axes are drawn in proportion with the input of *aspectratio* (the default behavior if *aspectratio* is provided). If *auto*, this scene's axes are drawn using the results of *data* except when one axis is more than four times the size of the two others, where in that case the results of *cube* are used." + }, + "aspectratio": { + "x": { + "valType": "number", + "role": "info", + "min": 0, + "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + } + }, + "y": { + "valType": "number", + "role": "info", + "min": 0, + "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + } + }, + "z": { + "valType": "number", + "role": "info", + "min": 0, + "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + } + }, + "editType": "plot", + "impliedEdits": { + "aspectmode": "manual", + "role": "object" + }, + "description": "Sets this scene's axis aspectratio.", + "role": "object" + }, + "xaxis": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false" + }, + "showspikes": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "editType": "plot" + }, + "spikesides": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "editType": "plot" + }, + "spikethickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "description": "Sets the thickness (in px) of the spikes.", + "editType": "plot" + }, + "spikecolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the spikes.", + "editType": "plot" + }, + "showbackground": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not this axis' wall has a background color.", + "editType": "plot" + }, + "backgroundcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(204, 204, 204, 0.5)", + "description": "Sets the background color of this axis' wall.", + "editType": "plot" + }, + "showaxeslabels": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not this axis is labeled", + "editType": "plot" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "median ascending", + "median descending" + ], + "dflt": "trace", + "role": "info", + "editType": "plot", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "plot", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ], + "dflt": "-", + "role": "info", + "editType": "plot", + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ], + "dflt": "normal", + "role": "info", + "editType": "plot", + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + }, + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + } + ], + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "anim": false, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "mirror": { + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ], + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark." + }, + "gridcolor": { + "valType": "color", + "dflt": "rgb(204, 204, 204)", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "zeroline": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines." + }, + "zerolinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the line color of the zero line." + }, + "zerolinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the zero line." + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "editType": "plot", + "calendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`" + }, + "role": "object", + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + }, + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "yaxis": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false" + }, + "showspikes": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "editType": "plot" + }, + "spikesides": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "editType": "plot" + }, + "spikethickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "description": "Sets the thickness (in px) of the spikes.", + "editType": "plot" + }, + "spikecolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the spikes.", + "editType": "plot" + }, + "showbackground": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not this axis' wall has a background color.", + "editType": "plot" + }, + "backgroundcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(204, 204, 204, 0.5)", + "description": "Sets the background color of this axis' wall.", + "editType": "plot" + }, + "showaxeslabels": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not this axis is labeled", + "editType": "plot" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "median ascending", + "median descending" + ], + "dflt": "trace", + "role": "info", + "editType": "plot", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "plot", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ], + "dflt": "-", + "role": "info", + "editType": "plot", + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ], + "dflt": "normal", + "role": "info", + "editType": "plot", + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + }, + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + } + ], + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "anim": false, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "mirror": { + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ], + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark." + }, + "gridcolor": { + "valType": "color", + "dflt": "rgb(204, 204, 204)", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "zeroline": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines." + }, + "zerolinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the line color of the zero line." + }, + "zerolinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the zero line." + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "editType": "plot", + "calendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`" + }, + "role": "object", + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + }, + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "zaxis": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false" + }, + "showspikes": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "editType": "plot" + }, + "spikesides": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "editType": "plot" + }, + "spikethickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 2, + "description": "Sets the thickness (in px) of the spikes.", + "editType": "plot" + }, + "spikecolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the spikes.", + "editType": "plot" + }, + "showbackground": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not this axis' wall has a background color.", + "editType": "plot" + }, + "backgroundcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(204, 204, 204, 0.5)", + "description": "Sets the background color of this axis' wall.", + "editType": "plot" + }, + "showaxeslabels": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Sets whether or not this axis is labeled", + "editType": "plot" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "median ascending", + "median descending" + ], + "dflt": "trace", + "role": "info", + "editType": "plot", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "plot", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ], + "dflt": "-", + "role": "info", + "editType": "plot", + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ], + "dflt": "normal", + "role": "info", + "editType": "plot", + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. Applies only to linear axes." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + }, + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + } + ], + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "anim": false, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "mirror": { + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ], + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "showline": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark." + }, + "gridcolor": { + "valType": "color", + "dflt": "rgb(204, 204, 204)", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "zeroline": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines." + }, + "zerolinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the line color of the zero line." + }, + "zerolinewidth": { + "valType": "number", + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the zero line." + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "editType": "plot", + "calendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`" + }, + "role": "object", + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + }, + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "dragmode": { + "valType": "enumerated", + "role": "info", + "values": [ + "orbit", + "turntable", + "zoom", + "pan", + false + ], + "editType": "plot", + "description": "Determines the mode of drag interactions for this scene." + }, + "hovermode": { + "valType": "enumerated", + "role": "info", + "values": [ + "closest", + false + ], + "dflt": "closest", + "editType": "modebar", + "description": "Determines the mode of hover interactions for this scene." + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in camera attributes. Defaults to `layout.uirevision`." + }, + "editType": "plot", + "_deprecated": { + "cameraposition": { + "valType": "info_array", + "role": "info", + "editType": "camera", + "description": "Obsolete. Use `camera` instead." + } + }, + "annotations": { + "items": { + "annotation": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not this annotation is visible." + }, + "x": { + "valType": "any", + "role": "info", + "description": "Sets the annotation's x position.", + "editType": "calc" + }, + "y": { + "valType": "any", + "role": "info", + "description": "Sets the annotation's y position.", + "editType": "calc" + }, + "z": { + "valType": "any", + "role": "info", + "description": "Sets the annotation's z position.", + "editType": "calc" + }, + "ax": { + "valType": "number", + "role": "info", + "description": "Sets the x component of the arrow tail about the arrow head (in pixels).", + "editType": "calc" + }, + "ay": { + "valType": "number", + "role": "info", + "description": "Sets the y component of the arrow tail about the arrow head (in pixels).", + "editType": "calc" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ], + "dflt": "auto", + "role": "info", + "editType": "calc", + "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side." + }, + "xshift": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels." + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ], + "dflt": "auto", + "role": "info", + "editType": "calc", + "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side." + }, + "yshift": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels." + }, + "text": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (
), bold (), italics (), hyperlinks (). Tags , , are also supported." + }, + "textangle": { + "valType": "angle", + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets the angle at which the `text` is drawn with respect to the horizontal." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets the annotation text font.", + "role": "object" + }, + "width": { + "valType": "number", + "min": 1, + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line." + }, + "height": { + "valType": "number", + "min": 1, + "dflt": null, + "role": "style", + "editType": "calc", + "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the opacity of the annotation (text + arrow)." + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "center", + "role": "style", + "editType": "calc", + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width." + }, + "valign": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "dflt": "middle", + "role": "style", + "editType": "calc", + "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height." + }, + "bgcolor": { + "valType": "color", + "dflt": "rgba(0,0,0,0)", + "role": "style", + "editType": "calc", + "description": "Sets the background color of the annotation." + }, + "bordercolor": { + "valType": "color", + "dflt": "rgba(0,0,0,0)", + "role": "style", + "editType": "calc", + "description": "Sets the color of the border enclosing the annotation `text`." + }, + "borderpad": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the padding (in px) between the `text` and the enclosing border." + }, + "borderwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of the border enclosing the annotation `text`." + }, + "showarrow": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc", + "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided." + }, + "arrowcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the color of the annotation arrow." + }, + "arrowhead": { + "valType": "integer", + "min": 0, + "max": 8, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the end annotation arrow head style." + }, + "startarrowhead": { + "valType": "integer", + "min": 0, + "max": 8, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the start annotation arrow head style." + }, + "arrowside": { + "valType": "flaglist", + "flags": [ + "end", + "start" + ], + "extras": [ + "none" + ], + "dflt": "end", + "role": "style", + "editType": "calc", + "description": "Sets the annotation arrow head position." + }, + "arrowsize": { + "valType": "number", + "min": 0.3, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line." + }, + "startarrowsize": { + "valType": "number", + "min": 0.3, + "dflt": 1, + "role": "style", + "editType": "calc", + "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line." + }, + "arrowwidth": { + "valType": "number", + "min": 0.1, + "role": "style", + "editType": "calc", + "description": "Sets the width (in px) of annotation arrow line." + }, + "standoff": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount." + }, + "startstandoff": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc", + "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount." + }, + "hovertext": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent." + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "calc", + "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "calc" + }, + "editType": "calc", + "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", + "role": "object" + }, + "editType": "calc", + "role": "object" + }, + "captureevents": { + "valType": "boolean", + "role": "info", + "editType": "calc", + "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`." + }, + "name": { + "valType": "string", + "role": "style", + "editType": "calc", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "editType": "calc", + "role": "object" + } + }, + "role": "object" + }, + "_isSubplotObj": true, + "role": "object" + }, + "geo": { + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "editType": "plot" + }, + "y": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "editType": "plot" + }, + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this row in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "editType": "plot" + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this column in the grid for this geo subplot . Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "resolution": { + "valType": "enumerated", + "values": [ + 110, + 50 + ], + "role": "info", + "dflt": 110, + "coerceNumber": true, + "description": "Sets the resolution of the base layers. The values have units of km/mm e.g. 110 corresponds to a scale ratio of 1:110,000,000.", + "editType": "plot" + }, + "scope": { + "valType": "enumerated", + "role": "info", + "values": [ + "world", + "usa", + "europe", + "asia", + "africa", + "north america", + "south america" + ], + "dflt": "world", + "description": "Set the scope of the map.", + "editType": "plot" + }, + "projection": { + "type": { + "valType": "enumerated", + "role": "info", + "values": [ + "equirectangular", + "mercator", + "orthographic", + "natural earth", + "kavrayskiy7", + "miller", + "robinson", + "eckert4", + "azimuthal equal area", + "azimuthal equidistant", + "conic equal area", + "conic conformal", + "conic equidistant", + "gnomonic", + "stereographic", + "mollweide", + "hammer", + "transverse mercator", + "albers usa", + "winkel tripel", + "aitoff", + "sinusoidal" + ], + "description": "Sets the projection type.", + "editType": "plot" + }, + "rotation": { + "lon": { + "valType": "number", + "role": "info", + "description": "Rotates the map along parallels (in degrees East). Defaults to the center of the `lonaxis.range` values.", + "editType": "plot" + }, + "lat": { + "valType": "number", + "role": "info", + "description": "Rotates the map along meridians (in degrees North).", + "editType": "plot" + }, + "roll": { + "valType": "number", + "role": "info", + "description": "Roll the map (in degrees) For example, a roll of *180* makes the map appear upside down.", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "parallels": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "description": "For conic projection types only. Sets the parallels (tangent, secant) where the cone intersects the sphere.", + "editType": "plot" + }, + "scale": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 1, + "description": "Zooms in or out on the map view. A scale of *1* corresponds to the largest zoom level that fits the map's lon and lat ranges. ", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "center": { + "lon": { + "valType": "number", + "role": "info", + "description": "Sets the longitude of the map's center. By default, the map's longitude center lies at the middle of the longitude range for scoped projection and above `projection.rotation.lon` otherwise.", + "editType": "plot" + }, + "lat": { + "valType": "number", + "role": "info", + "description": "Sets the latitude of the map's center. For all projection types, the map's latitude center lies at the middle of the latitude range by default.", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "showcoastlines": { + "valType": "boolean", + "role": "info", + "description": "Sets whether or not the coastlines are drawn.", + "editType": "plot" + }, + "coastlinecolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the coastline color.", + "editType": "plot" + }, + "coastlinewidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "description": "Sets the coastline stroke width (in px).", + "editType": "plot" + }, + "showland": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not land masses are filled in color.", + "editType": "plot" + }, + "landcolor": { + "valType": "color", + "role": "style", + "dflt": "#F0DC82", + "description": "Sets the land mass color.", + "editType": "plot" + }, + "showocean": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not oceans are filled in color.", + "editType": "plot" + }, + "oceancolor": { + "valType": "color", + "role": "style", + "dflt": "#3399FF", + "description": "Sets the ocean color", + "editType": "plot" + }, + "showlakes": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not lakes are drawn.", + "editType": "plot" + }, + "lakecolor": { + "valType": "color", + "role": "style", + "dflt": "#3399FF", + "description": "Sets the color of the lakes.", + "editType": "plot" + }, + "showrivers": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not rivers are drawn.", + "editType": "plot" + }, + "rivercolor": { + "valType": "color", + "role": "style", + "dflt": "#3399FF", + "description": "Sets color of the rivers.", + "editType": "plot" + }, + "riverwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "description": "Sets the stroke width (in px) of the rivers.", + "editType": "plot" + }, + "showcountries": { + "valType": "boolean", + "role": "info", + "description": "Sets whether or not country boundaries are drawn.", + "editType": "plot" + }, + "countrycolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets line color of the country boundaries.", + "editType": "plot" + }, + "countrywidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "description": "Sets line width (in px) of the country boundaries.", + "editType": "plot" + }, + "showsubunits": { + "valType": "boolean", + "role": "info", + "description": "Sets whether or not boundaries of subunits within countries (e.g. states, provinces) are drawn.", + "editType": "plot" + }, + "subunitcolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color of the subunits boundaries.", + "editType": "plot" + }, + "subunitwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "description": "Sets the stroke width (in px) of the subunits boundaries.", + "editType": "plot" + }, + "showframe": { + "valType": "boolean", + "role": "info", + "description": "Sets whether or not a frame is drawn around the map.", + "editType": "plot" + }, + "framecolor": { + "valType": "color", + "role": "style", + "dflt": "#444", + "description": "Sets the color the frame.", + "editType": "plot" + }, + "framewidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "description": "Sets the stroke width (in px) of the frame.", + "editType": "plot" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "#fff", + "description": "Set the background color of the map", + "editType": "plot" + }, + "lonaxis": { + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "description": "Sets the range of this axis (in degrees), sets the map's clipped coordinates.", + "editType": "plot" + }, + "showgrid": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not graticule are shown on the map.", + "editType": "plot" + }, + "tick0": { + "valType": "number", + "role": "info", + "dflt": 0, + "description": "Sets the graticule's starting tick longitude/latitude.", + "editType": "plot" + }, + "dtick": { + "valType": "number", + "role": "info", + "description": "Sets the graticule's longitude/latitude tick step.", + "editType": "plot" + }, + "gridcolor": { + "valType": "color", + "role": "style", + "dflt": "#eee", + "description": "Sets the graticule's stroke color.", + "editType": "plot" + }, + "gridwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "description": "Sets the graticule's stroke width (in px).", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "lataxis": { + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "description": "Sets the range of this axis (in degrees), sets the map's clipped coordinates.", + "editType": "plot" + }, + "showgrid": { + "valType": "boolean", + "role": "info", + "dflt": false, + "description": "Sets whether or not graticule are shown on the map.", + "editType": "plot" + }, + "tick0": { + "valType": "number", + "role": "info", + "dflt": 0, + "description": "Sets the graticule's starting tick longitude/latitude.", + "editType": "plot" + }, + "dtick": { + "valType": "number", + "role": "info", + "description": "Sets the graticule's longitude/latitude tick step.", + "editType": "plot" + }, + "gridcolor": { + "valType": "color", + "role": "style", + "dflt": "#eee", + "description": "Sets the graticule's stroke color.", + "editType": "plot" + }, + "gridwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 1, + "description": "Sets the graticule's stroke width (in px).", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "editType": "plot", + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in the view (projection and center). Defaults to `layout.uirevision`." + }, + "_isSubplotObj": true, + "role": "object" + }, + "mapbox": { + "_arrayAttrRegexps": [ + {} + ], + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this mapbox subplot (in plot fraction).", + "editType": "plot" + }, + "y": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this mapbox subplot (in plot fraction).", + "editType": "plot" + }, + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this row in the grid for this mapbox subplot .", + "editType": "plot" + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "description": "If there is a layout grid, use the domain for this column in the grid for this mapbox subplot .", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "accesstoken": { + "valType": "string", + "noBlank": true, + "strict": true, + "role": "info", + "description": "Sets the mapbox access token to be used for this mapbox map. Alternatively, the mapbox access token can be set in the configuration options under `mapboxAccessToken`. Note that accessToken are only required when `style` (e.g with values : basic, streets, outdoors, light, dark, satellite, satellite-streets ) and/or a layout layer references the Mapbox server.", + "editType": "plot" + }, + "style": { + "valType": "any", + "values": [ + "basic", + "streets", + "outdoors", + "light", + "dark", + "satellite", + "satellite-streets", + "open-street-map", + "white-bg", + "carto-positron", + "carto-darkmatter", + "stamen-terrain", + "stamen-toner", + "stamen-watercolor" + ], + "dflt": "basic", + "role": "style", + "description": "Defines the map layers that are rendered by default below the trace layers defined in `data`, which are themselves by default rendered below the layers defined in `layout.mapbox.layers`. These layers can be defined either explicitly as a Mapbox Style object which can contain multiple layer definitions that load data from any public or private Tile Map Service (TMS or XYZ) or Web Map Service (WMS) or implicitly by using one of the built-in style objects which use WMSes which do not require any access tokens, or by using a default Mapbox style or custom Mapbox style URL, both of which require a Mapbox access token Note that Mapbox access token can be set in the `accesstoken` attribute or in the `mapboxAccessToken` config option. Mapbox Style objects are of the form described in the Mapbox GL JS documentation available at https://docs.mapbox.com/mapbox-gl-js/style-spec The built-in plotly.js styles objects are: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor The built-in Mapbox styles are: basic, streets, outdoors, light, dark, satellite, satellite-streets Mapbox style URLs are of the form: mapbox://mapbox.mapbox--", + "editType": "plot" + }, + "center": { + "lon": { + "valType": "number", + "dflt": 0, + "role": "info", + "description": "Sets the longitude of the center of the map (in degrees East).", + "editType": "plot" + }, + "lat": { + "valType": "number", + "dflt": 0, + "role": "info", + "description": "Sets the latitude of the center of the map (in degrees North).", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "zoom": { + "valType": "number", + "dflt": 1, + "role": "info", + "description": "Sets the zoom level of the map (mapbox.zoom).", + "editType": "plot" + }, + "bearing": { + "valType": "number", + "dflt": 0, + "role": "info", + "description": "Sets the bearing angle of the map in degrees counter-clockwise from North (mapbox.bearing).", + "editType": "plot" + }, + "pitch": { + "valType": "number", + "dflt": 0, + "role": "info", + "description": "Sets the pitch angle of the map (in degrees, where *0* means perpendicular to the surface of the map) (mapbox.pitch).", + "editType": "plot" + }, + "layers": { + "items": { + "layer": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Determines whether this layer is displayed", + "editType": "plot" + }, + "sourcetype": { + "valType": "enumerated", + "values": [ + "geojson", + "vector", + "raster", + "image" + ], + "dflt": "geojson", + "role": "info", + "description": "Sets the source type for this layer, that is the type of the layer data.", + "editType": "plot" + }, + "source": { + "valType": "any", + "role": "info", + "description": "Sets the source data for this layer (mapbox.layer.source). When `sourcetype` is set to *geojson*, `source` can be a URL to a GeoJSON or a GeoJSON object. When `sourcetype` is set to *vector* or *raster*, `source` can be a URL or an array of tile URLs. When `sourcetype` is set to *image*, `source` can be a URL to an image.", + "editType": "plot" + }, + "sourcelayer": { + "valType": "string", + "dflt": "", + "role": "info", + "description": "Specifies the layer to use from a vector tile source (mapbox.layer.source-layer). Required for *vector* source type that supports multiple layers.", + "editType": "plot" + }, + "sourceattribution": { + "valType": "string", + "role": "info", + "description": "Sets the attribution for this source.", + "editType": "plot" + }, + "type": { + "valType": "enumerated", + "values": [ + "circle", + "line", + "fill", + "symbol", + "raster" + ], + "dflt": "circle", + "role": "info", + "description": "Sets the layer type, that is the how the layer data set in `source` will be rendered With `sourcetype` set to *geojson*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. but note that *line* and *fill* are not compatible with Point GeoJSON geometries. With `sourcetype` set to *vector*, the following values are allowed: *circle*, *line*, *fill* and *symbol*. With `sourcetype` set to *raster* or `*image*`, only the *raster* value is allowed.", + "editType": "plot" + }, + "coordinates": { + "valType": "any", + "role": "info", + "description": "Sets the coordinates array contains [longitude, latitude] pairs for the image corners listed in clockwise order: top left, top right, bottom right, bottom left. Only has an effect for *image* `sourcetype`.", + "editType": "plot" + }, + "below": { + "valType": "string", + "role": "info", + "description": "Determines if the layer will be inserted before the layer with the specified ID. If omitted or set to '', the layer will be inserted above every existing layer.", + "editType": "plot" + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "description": "Sets the primary layer color. If `type` is *circle*, color corresponds to the circle color (mapbox.layer.paint.circle-color) If `type` is *line*, color corresponds to the line color (mapbox.layer.paint.line-color) If `type` is *fill*, color corresponds to the fill color (mapbox.layer.paint.fill-color) If `type` is *symbol*, color corresponds to the icon color (mapbox.layer.paint.icon-color)", + "editType": "plot" + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 1, + "role": "info", + "description": "Sets the opacity of the layer. If `type` is *circle*, opacity corresponds to the circle opacity (mapbox.layer.paint.circle-opacity) If `type` is *line*, opacity corresponds to the line opacity (mapbox.layer.paint.line-opacity) If `type` is *fill*, opacity corresponds to the fill opacity (mapbox.layer.paint.fill-opacity) If `type` is *symbol*, opacity corresponds to the icon/text opacity (mapbox.layer.paint.text-opacity)", + "editType": "plot" + }, + "minzoom": { + "valType": "number", + "min": 0, + "max": 24, + "dflt": 0, + "role": "info", + "description": "Sets the minimum zoom level (mapbox.layer.minzoom). At zoom levels less than the minzoom, the layer will be hidden.", + "editType": "plot" + }, + "maxzoom": { + "valType": "number", + "min": 0, + "max": 24, + "dflt": 24, + "role": "info", + "description": "Sets the maximum zoom level (mapbox.layer.maxzoom). At zoom levels equal to or greater than the maxzoom, the layer will be hidden.", + "editType": "plot" + }, + "circle": { + "radius": { + "valType": "number", + "dflt": 15, + "role": "style", + "description": "Sets the circle radius (mapbox.layer.paint.circle-radius). Has an effect only when `type` is set to *circle*.", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "line": { + "width": { + "valType": "number", + "dflt": 2, + "role": "style", + "description": "Sets the line width (mapbox.layer.paint.line-width). Has an effect only when `type` is set to *line*.", + "editType": "plot" + }, + "dash": { + "valType": "data_array", + "role": "data", + "description": "Sets the length of dashes and gaps (mapbox.layer.paint.line-dasharray). Has an effect only when `type` is set to *line*.", + "editType": "plot" + }, + "editType": "plot", + "role": "object", + "dashsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for dash .", + "editType": "none" + } + }, + "fill": { + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "description": "Sets the fill outline color (mapbox.layer.paint.fill-outline-color). Has an effect only when `type` is set to *fill*.", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "symbol": { + "icon": { + "valType": "string", + "dflt": "marker", + "role": "style", + "description": "Sets the symbol icon image (mapbox.layer.layout.icon-image). Full list: https://www.mapbox.com/maki-icons/", + "editType": "plot" + }, + "iconsize": { + "valType": "number", + "dflt": 10, + "role": "style", + "description": "Sets the symbol icon size (mapbox.layer.layout.icon-size). Has an effect only when `type` is set to *symbol*.", + "editType": "plot" + }, + "text": { + "valType": "string", + "dflt": "", + "role": "info", + "description": "Sets the symbol text (mapbox.layer.layout.text-field).", + "editType": "plot" + }, + "placement": { + "valType": "enumerated", + "values": [ + "point", + "line", + "line-center" + ], + "dflt": "point", + "role": "info", + "description": "Sets the symbol and/or text placement (mapbox.layer.layout.symbol-placement). If `placement` is *point*, the label is placed where the geometry is located If `placement` is *line*, the label is placed along the line of the geometry If `placement` is *line-center*, the label is placed on the center of the geometry", + "editType": "plot" + }, + "textfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "dflt": "Open Sans Regular, Arial Unicode MS Regular", + "editType": "plot" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", + "editType": "plot", + "role": "object" + }, + "textposition": { + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ], + "dflt": "middle center", + "arrayOk": false, + "role": "style", + "editType": "plot", + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates." + }, + "editType": "plot", + "role": "object" + }, + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "editType": "plot", + "role": "object" + } + }, + "role": "object" + }, + "editType": "plot", + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in the view: `center`, `zoom`, `bearing`, `pitch`. Defaults to `layout.uirevision`." + }, + "_isSubplotObj": true, + "role": "object" + }, + "polar": { + "domain": { + "x": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the horizontal domain of this polar subplot (in plot fraction)." + }, + "y": { + "valType": "info_array", + "role": "info", + "editType": "plot", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "description": "Sets the vertical domain of this polar subplot (in plot fraction)." + }, + "editType": "plot", + "row": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "If there is a layout grid, use the domain for this row in the grid for this polar subplot ." + }, + "column": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "info", + "editType": "plot", + "description": "If there is a layout grid, use the domain for this column in the grid for this polar subplot ." + }, + "role": "object" + }, + "sector": { + "valType": "info_array", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "dflt": [ + 0, + 360 + ], + "role": "info", + "editType": "plot", + "description": "Sets angular span of this polar subplot with two angles (in degrees). Sector are assumed to be spanned in the counterclockwise direction with *0* corresponding to rightmost limit of the polar subplot." + }, + "hole": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 0, + "editType": "plot", + "role": "info", + "description": "Sets the fraction of the radius to cut out of the polar subplot." + }, + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "plot", + "dflt": "#fff", + "description": "Set the background color of the subplot" + }, + "radialaxis": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ], + "dflt": "-", + "role": "info", + "editType": "calc", + "_noTemplating": true, + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question." + }, + "autorange": { + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ], + "dflt": true, + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*." + }, + "rangemode": { + "valType": "enumerated", + "values": [ + "tozero", + "nonnegative", + "normal" + ], + "dflt": "tozero", + "role": "style", + "editType": "calc", + "description": "If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. If *normal*, the range is computed in relation to the extrema of the input data (same behavior as for cartesian axes)." + }, + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + }, + { + "valType": "any", + "editType": "plot", + "impliedEdits": { + "^autorange": false + } + } + ], + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "anim": true, + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "median ascending", + "median descending" + ], + "dflt": "trace", + "role": "info", + "editType": "calc", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "angle": { + "valType": "angle", + "editType": "plot", + "role": "info", + "description": "Sets the angle (in degrees) from which the radial axis is drawn. Note that by default, radial axis line on the theta=0 line corresponds to a line pointing right (like what mathematicians prefer). Defaults to the first `polar.sector` angle." + }, + "side": { + "valType": "enumerated", + "values": [ + "clockwise", + "counterclockwise" + ], + "dflt": "clockwise", + "editType": "plot", + "role": "info", + "description": "Determines on which side of radial axis line the tick and tick labels appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Sets the title of this axis. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "dflt": "" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets this axis' title font. Note that the title's font used to be customized by the now deprecated `titlefont` attribute.", + "role": "object" + }, + "editType": "plot", + "role": "object" + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `range`, `autorange`, `angle`, and `title` if in `editable: true` configuration. Defaults to `polar.uirevision`." + }, + "editType": "plot", + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "editType": "ticks", + "description": "Value of `title` is no longer a simple *string* but a set of sub-attributes. To set the axis' title, please use `title.text` now." + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "ticks", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "ticks" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "ticks" + }, + "editType": "ticks", + "description": "Former `titlefont` is now the sub-attribute `font` of `title`. To customize title font properties, please use `title.font` now." + } + }, + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "showline": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true + }, + "gridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "layer": { + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ], + "dflt": "above traces", + "role": "info", + "editType": "plot", + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis." + }, + "calendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`" + }, + "role": "object", + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + }, + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "angularaxis": { + "visible": { + "valType": "boolean", + "role": "info", + "editType": "plot", + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true + }, + "type": { + "valType": "enumerated", + "values": [ + "-", + "linear", + "category" + ], + "dflt": "-", + "role": "info", + "editType": "calc", + "_noTemplating": true, + "description": "Sets the angular axis type. If *linear*, set `thetaunit` to determine the unit in which axis value are shown. If *category, use `period` to set the number of integer coordinates around polar axis." + }, + "categoryorder": { + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array", + "total ascending", + "total descending", + "min ascending", + "min descending", + "max ascending", + "max descending", + "sum ascending", + "sum descending", + "mean ascending", + "mean descending", + "median ascending", + "median descending" + ], + "dflt": "trace", + "role": "info", + "editType": "calc", + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`. Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the numerical order of the values. Similarly, the order can be determined by the min, max, sum, mean or median of all the values." + }, + "categoryarray": { + "valType": "data_array", + "role": "data", + "editType": "calc", + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`." + }, + "thetaunit": { + "valType": "enumerated", + "values": [ + "radians", + "degrees" + ], + "dflt": "degrees", + "role": "info", + "editType": "calc", + "description": "Sets the format unit of the formatted *theta* values. Has an effect only when `angularaxis.type` is *linear*." + }, + "period": { + "valType": "number", + "editType": "calc", + "min": 0, + "role": "info", + "description": "Set the angular period. Has an effect only when `angularaxis.type` is *category*." + }, + "direction": { + "valType": "enumerated", + "values": [ + "counterclockwise", + "clockwise" + ], + "dflt": "counterclockwise", + "role": "info", + "editType": "calc", + "description": "Sets the direction corresponding to positive angles." + }, + "rotation": { + "valType": "angle", + "editType": "calc", + "role": "info", + "description": "Sets that start position (in degrees) of the angular axis By default, polar subplots with `direction` set to *counterclockwise* get a `rotation` of *0* which corresponds to due East (like what mathematicians prefer). In turn, polar with `direction` set to *clockwise* get a rotation of *90* which corresponds to due North (like on a compass)," + }, + "hoverformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "none", + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis `rotation`. Defaults to `polar.uirevision`." + }, + "editType": "plot", + "color": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this." + }, + "showline": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not a line bounding this axis is drawn." + }, + "linecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the axis line color." + }, + "linewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the axis line." + }, + "showgrid": { + "valType": "boolean", + "role": "style", + "editType": "plot", + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true + }, + "gridcolor": { + "valType": "color", + "dflt": "#eee", + "role": "style", + "editType": "plot", + "description": "Sets the color of the grid lines." + }, + "gridwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the width (in px) of the grid lines." + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "plot", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "plot", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "plot", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "plot", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines." + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "plot", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "plot", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "plot", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "plot", + "description": "Determines whether or not the tick labels are drawn." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label prefix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets a tick label suffix." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "plot", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "plot", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "plot", + "description": "If \"true\", even 4-digit integers are separated" + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "plot", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "plot" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "plot" + }, + "editType": "plot", + "description": "Sets the tick font.", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "plot", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "plot", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "plot" + }, + { + "valType": "any", + "editType": "plot" + } + ], + "editType": "plot", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "plot", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "plot", + "name": { + "valType": "string", + "role": "style", + "editType": "plot", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "plot", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "layer": { + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ], + "dflt": "above traces", + "role": "info", + "editType": "plot", + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis." + }, + "role": "object", + "categoryarraysrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none" + }, + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "gridshape": { + "valType": "enumerated", + "values": [ + "circular", + "linear" + ], + "dflt": "circular", + "role": "style", + "editType": "plot", + "description": "Determines if the radial axis grid lines and angular axis line are drawn as *circular* sectors or as *linear* (polygon) sectors. Has an effect only when the angular axis has `type` *category*. Note that `radialaxis.angle` is snapped to the angle of the closest vertex when `gridshape` is *circular* (so that radial axis scale is the same as the data scale)." + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of user-driven changes in axis attributes, if not overridden in the individual axes. Defaults to `layout.uirevision`." + }, + "editType": "calc", + "_isSubplotObj": true, + "role": "object" + }, + "radialaxis": { + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "editType": "plot" + }, + { + "valType": "number", + "editType": "plot" + } + ], + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Defines the start and end point of this radial axis.", + "editType": "plot" + }, + "domain": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "description": "Polar chart subplots are not supported yet. This key has currently no effect." + }, + "orientation": { + "valType": "number", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the orientation (an angle with respect to the origin) of the radial axis.", + "editType": "plot" + }, + "showline": { + "valType": "boolean", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the line bounding this radial axis will be shown on the figure.", + "editType": "plot" + }, + "showticklabels": { + "valType": "boolean", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the radial axis ticks will feature tick labels.", + "editType": "plot" + }, + "tickorientation": { + "valType": "enumerated", + "values": [ + "horizontal", + "vertical" + ], + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the orientation (from the paper perspective) of the radial axis tick labels.", + "editType": "plot" + }, + "ticklen": { + "valType": "number", + "min": 0, + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this radial axis.", + "editType": "plot" + }, + "tickcolor": { + "valType": "color", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the color of the tick lines on this radial axis.", + "editType": "plot" + }, + "ticksuffix": { + "valType": "string", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this radial axis.", + "editType": "plot" + }, + "endpadding": { + "valType": "number", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots.", + "editType": "plot" + }, + "visible": { + "valType": "boolean", + "role": "info", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not this axis will be visible.", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "angularaxis": { + "range": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "dflt": 0, + "editType": "plot" + }, + { + "valType": "number", + "dflt": 360, + "editType": "plot" + } + ], + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Defines the start and end point of this angular axis.", + "editType": "plot" + }, + "domain": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + }, + { + "valType": "number", + "min": 0, + "max": 1, + "editType": "plot" + } + ], + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "description": "Polar chart subplots are not supported yet. This key has currently no effect." + }, + "showline": { + "valType": "boolean", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the line bounding this angular axis will be shown on the figure.", + "editType": "plot" + }, + "showticklabels": { + "valType": "boolean", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not the angular axis ticks will feature tick labels.", + "editType": "plot" + }, + "tickorientation": { + "valType": "enumerated", + "values": [ + "horizontal", + "vertical" + ], + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the orientation (from the paper perspective) of the angular axis tick labels.", + "editType": "plot" + }, + "ticklen": { + "valType": "number", + "min": 0, + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this angular axis.", + "editType": "plot" + }, + "tickcolor": { + "valType": "color", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the color of the tick lines on this angular axis.", + "editType": "plot" + }, + "ticksuffix": { + "valType": "string", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the length of the tick lines on this angular axis.", + "editType": "plot" + }, + "endpadding": { + "valType": "number", + "role": "style", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots.", + "editType": "plot" + }, + "visible": { + "valType": "boolean", + "role": "info", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Determines whether or not this axis will be visible.", + "editType": "plot" + }, + "editType": "plot", + "role": "object" + }, + "direction": { + "valType": "enumerated", + "values": [ + "clockwise", + "counterclockwise" + ], + "role": "info", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Sets the direction corresponding to positive angles in legacy polar charts.", + "editType": "plot" + }, + "orientation": { + "valType": "angle", + "role": "info", + "description": "Legacy polar charts are deprecated! Please switch to *polar* subplots. Rotates the entire polar by the given angle in legacy polar charts.", + "editType": "plot" + }, + "editType": "calc", + "legend": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "legend", + "description": "Sets the legend background color." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "legend", + "description": "Sets the color of the border enclosing the legend." + }, + "borderwidth": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "legend", + "description": "Sets the width (in px) of the border enclosing the legend." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "legend", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "legend" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "legend" + }, + "editType": "legend", + "description": "Sets the font used to text the legend items.", + "role": "object" + }, + "orientation": { + "valType": "enumerated", + "values": [ + "v", + "h" + ], + "dflt": "v", + "role": "info", + "editType": "legend", + "description": "Sets the orientation of the legend." + }, + "traceorder": { + "valType": "flaglist", + "flags": [ + "reversed", + "grouped" + ], + "extras": [ + "normal" + ], + "role": "style", + "editType": "legend", + "description": "Determines the order at which the legend items are displayed. If *normal*, the items are displayed top-to-bottom in the same order as the input data. If *reversed*, the items are displayed in the opposite order as *normal*. If *grouped*, the items are displayed in groups (when a trace `legendgroup` is provided). if *grouped+reversed*, the items are displayed in the opposite order as *grouped*." + }, + "tracegroupgap": { + "valType": "number", + "min": 0, + "dflt": 10, + "role": "style", + "editType": "legend", + "description": "Sets the amount of vertical space (in px) between legend groups." + }, + "itemsizing": { + "valType": "enumerated", + "values": [ + "trace", + "constant" + ], + "dflt": "trace", + "role": "style", + "editType": "legend", + "description": "Determines if the legend items symbols scale with their corresponding *trace* attributes or remain *constant* independent of the symbol size on the graph." + }, + "itemclick": { + "valType": "enumerated", + "values": [ + "toggle", + "toggleothers", + false + ], + "dflt": "toggle", + "role": "info", + "editType": "legend", + "description": "Determines the behavior on legend item click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disable legend item click interactions." + }, + "itemdoubleclick": { + "valType": "enumerated", + "values": [ + "toggle", + "toggleothers", + false + ], + "dflt": "toggleothers", + "role": "info", + "editType": "legend", + "description": "Determines the behavior on legend item double-click. *toggle* toggles the visibility of the item clicked on the graph. *toggleothers* makes the clicked item the sole visible item on the graph. *false* disable legend item double-click interactions." + }, + "x": { + "valType": "number", + "min": -2, + "max": 3, + "role": "style", + "editType": "legend", + "description": "Sets the x position (in normalized coordinates) of the legend. Defaults to *1.02* for vertical legends and defaults to *0* for horizontal legends." + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ], + "dflt": "left", + "role": "info", + "editType": "legend", + "description": "Sets the legend's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the legend. Value *auto* anchors legends to the right for `x` values greater than or equal to 2/3, anchors legends to the left for `x` values less than or equal to 1/3 and anchors legends with respect to their center otherwise." + }, + "y": { + "valType": "number", + "min": -2, + "max": 3, + "role": "style", + "editType": "legend", + "description": "Sets the y position (in normalized coordinates) of the legend. Defaults to *1* for vertical legends, defaults to *-0.1* for horizontal legends on graphs w/o range sliders and defaults to *1.1* for horizontal legends on graph with one or multiple range sliders." + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ], + "role": "info", + "editType": "legend", + "description": "Sets the legend's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the legend. Value *auto* anchors legends at their bottom for `y` values less than or equal to 1/3, anchors legends to at their top for `y` values greater than or equal to 2/3 and anchors legends with respect to their middle otherwise." + }, + "uirevision": { + "valType": "any", + "role": "info", + "editType": "none", + "description": "Controls persistence of legend-driven changes in trace and pie label visibility. Defaults to `layout.uirevision`." + }, + "valign": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "dflt": "middle", + "role": "style", + "editType": "legend", + "description": "Sets the vertical alignment of the symbols with respect to their associated text." + }, + "editType": "legend", + "role": "object" + }, + "annotations": { + "items": { + "annotation": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc+arraydraw", + "description": "Determines whether or not this annotation is visible." + }, + "text": { + "valType": "string", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (
), bold (), italics (), hyperlinks (). Tags , , are also supported." + }, + "textangle": { + "valType": "angle", + "dflt": 0, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets the angle at which the `text` is drawn with respect to the horizontal." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "calc+arraydraw", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "calc+arraydraw" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "arraydraw" + }, + "editType": "calc+arraydraw", + "description": "Sets the annotation text font.", + "role": "object" + }, + "width": { + "valType": "number", + "min": 1, + "dflt": null, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line." + }, + "height": { + "valType": "number", + "min": 1, + "dflt": null, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped." + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 1, + "role": "style", + "editType": "arraydraw", + "description": "Sets the opacity of the annotation (text + arrow)." + }, + "align": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "center", + "role": "style", + "editType": "arraydraw", + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width." + }, + "valign": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "dflt": "middle", + "role": "style", + "editType": "arraydraw", + "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height." + }, + "bgcolor": { + "valType": "color", + "dflt": "rgba(0,0,0,0)", + "role": "style", + "editType": "arraydraw", + "description": "Sets the background color of the annotation." + }, + "bordercolor": { + "valType": "color", + "dflt": "rgba(0,0,0,0)", + "role": "style", + "editType": "arraydraw", + "description": "Sets the color of the border enclosing the annotation `text`." + }, + "borderpad": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets the padding (in px) between the `text` and the enclosing border." + }, + "borderwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets the width (in px) of the border enclosing the annotation `text`." + }, + "showarrow": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "calc+arraydraw", + "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided." + }, + "arrowcolor": { + "valType": "color", + "role": "style", + "editType": "arraydraw", + "description": "Sets the color of the annotation arrow." + }, + "arrowhead": { + "valType": "integer", + "min": 0, + "max": 8, + "dflt": 1, + "role": "style", + "editType": "arraydraw", + "description": "Sets the end annotation arrow head style." + }, + "startarrowhead": { + "valType": "integer", + "min": 0, + "max": 8, + "dflt": 1, + "role": "style", + "editType": "arraydraw", + "description": "Sets the start annotation arrow head style." + }, + "arrowside": { + "valType": "flaglist", + "flags": [ + "end", + "start" + ], + "extras": [ + "none" + ], + "dflt": "end", + "role": "style", + "editType": "arraydraw", + "description": "Sets the annotation arrow head position." + }, + "arrowsize": { + "valType": "number", + "min": 0.3, + "dflt": 1, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line." + }, + "startarrowsize": { + "valType": "number", + "min": 0.3, + "dflt": 1, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line." + }, + "arrowwidth": { + "valType": "number", + "min": 0.1, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets the width (in px) of annotation arrow line." + }, + "standoff": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount." + }, + "startstandoff": { + "valType": "number", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "calc+arraydraw", + "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount." + }, + "ax": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the x component of the arrow tail about the arrow head. If `axref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from right to left (left to right). If `axref` is an axis, this is an absolute value on that axis, like `x`, NOT a relative value." + }, + "ay": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the y component of the arrow tail about the arrow head. If `ayref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from bottom to top (top to bottom). If `ayref` is an axis, this is an absolute value on that axis, like `y`, NOT a relative value." + }, + "axref": { + "valType": "enumerated", + "dflt": "pixel", + "values": [ + "pixel", + "/^x([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "Indicates in what terms the tail of the annotation (ax,ay) is specified. If `pixel`, `ax` is a relative offset in pixels from `x`. If set to an x axis id (e.g. *x* or *x2*), `ax` is specified in the same terms as that axis. This is useful for trendline annotations which should continue to indicate the correct trend when zoomed." + }, + "ayref": { + "valType": "enumerated", + "dflt": "pixel", + "values": [ + "pixel", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "Indicates in what terms the tail of the annotation (ax,ay) is specified. If `pixel`, `ay` is a relative offset in pixels from `y`. If set to a y axis id (e.g. *y* or *y2*), `ay` is specified in the same terms as that axis. This is useful for trendline annotations which should continue to indicate the correct trend when zoomed." + }, + "xref": { + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "Sets the annotation's x coordinate axis. If set to an x axis id (e.g. *x* or *x2*), the `x` position refers to an x coordinate If set to *paper*, the `x` position refers to the distance from the left side of the plotting area in normalized coordinates where 0 (1) corresponds to the left (right) side." + }, + "x": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the annotation's x position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ], + "dflt": "auto", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side." + }, + "xshift": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "calc+arraydraw", + "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels." + }, + "yref": { + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "Sets the annotation's y coordinate axis. If set to an y axis id (e.g. *y* or *y2*), the `y` position refers to an y coordinate If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where 0 (1) corresponds to the bottom (top)." + }, + "y": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the annotation's y position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ], + "dflt": "auto", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side." + }, + "yshift": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "calc+arraydraw", + "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels." + }, + "clicktoshow": { + "valType": "enumerated", + "values": [ + false, + "onoff", + "onout" + ], + "dflt": false, + "role": "style", + "editType": "arraydraw", + "description": "Makes this annotation respond to clicks on the plot. If you click a data point that exactly matches the `x` and `y` values of this annotation, and it is hidden (visible: false), it will appear. In *onoff* mode, you must click the same point again to make it disappear, so if you click multiple points, you can show multiple annotations. In *onout* mode, a click anywhere else in the plot (on another data point or not) will hide this annotation. If you need to show/hide this annotation in response to different `x` or `y` values, you can set `xclick` and/or `yclick`. This is useful for example to label the side of a bar. To label markers though, `standoff` is preferred over `xclick` and `yclick`." + }, + "xclick": { + "valType": "any", + "role": "info", + "editType": "arraydraw", + "description": "Toggle this annotation when clicking a data point whose `x` value is `xclick` rather than the annotation's `x` value." + }, + "yclick": { + "valType": "any", + "role": "info", + "editType": "arraydraw", + "description": "Toggle this annotation when clicking a data point whose `y` value is `yclick` rather than the annotation's `y` value." + }, + "hovertext": { + "valType": "string", + "role": "info", + "editType": "arraydraw", + "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear." + }, + "hoverlabel": { + "bgcolor": { + "valType": "color", + "role": "style", + "editType": "arraydraw", + "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent." + }, + "bordercolor": { + "valType": "color", + "role": "style", + "editType": "arraydraw", + "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`." + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "editType": "arraydraw", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*." + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "arraydraw" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "arraydraw" + }, + "editType": "arraydraw", + "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", + "role": "object" + }, + "editType": "arraydraw", + "role": "object" + }, + "captureevents": { + "valType": "boolean", + "role": "info", + "editType": "arraydraw", + "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`." + }, + "editType": "calc", + "_deprecated": { + "ref": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Obsolete. Set `xref` and `yref` separately instead." + } + }, + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "shapes": { + "items": { + "shape": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc+arraydraw", + "description": "Determines whether or not this shape is visible." + }, + "type": { + "valType": "enumerated", + "values": [ + "circle", + "rect", + "path", + "line" + ], + "role": "info", + "editType": "calc+arraydraw", + "description": "Specifies the shape type to be drawn. If *line*, a line is drawn from (`x0`,`y0`) to (`x1`,`y1`) with respect to the axes' sizing mode. If *circle*, a circle is drawn from ((`x0`+`x1`)/2, (`y0`+`y1`)/2)) with radius (|(`x0`+`x1`)/2 - `x0`|, |(`y0`+`y1`)/2 -`y0`)|) with respect to the axes' sizing mode. If *rect*, a rectangle is drawn linking (`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`), (`x0`,`y1`), (`x0`,`y0`) with respect to the axes' sizing mode. If *path*, draw a custom SVG path using `path`. with respect to the axes' sizing mode." + }, + "layer": { + "valType": "enumerated", + "values": [ + "below", + "above" + ], + "dflt": "above", + "role": "info", + "editType": "arraydraw", + "description": "Specifies whether shapes are drawn below or above traces." + }, + "xref": { + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "Sets the shape's x coordinate axis. If set to an x axis id (e.g. *x* or *x2*), the `x` position refers to an x coordinate. If set to *paper*, the `x` position refers to the distance from the left side of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right) side. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, then you must convert the date to unix time in milliseconds." + }, + "xsizemode": { + "valType": "enumerated", + "values": [ + "scaled", + "pixel" + ], + "dflt": "scaled", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the shapes's sizing mode along the x axis. If set to *scaled*, `x0`, `x1` and x coordinates within `path` refer to data values on the x axis or a fraction of the plot area's width (`xref` set to *paper*). If set to *pixel*, `xanchor` specifies the x position in terms of data or plot fraction but `x0`, `x1` and x coordinates within `path` are pixels relative to `xanchor`. This way, the shape can have a fixed width while maintaining a position relative to data or plot fraction." + }, + "xanchor": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Only relevant in conjunction with `xsizemode` set to *pixel*. Specifies the anchor point on the x axis to which `x0`, `x1` and x coordinates within `path` are relative to. E.g. useful to attach a pixel sized shape to a certain data value. No effect when `xsizemode` not set to *pixel*." + }, + "x0": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the shape's starting x position. See `type` and `xsizemode` for more info." + }, + "x1": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the shape's end x position. See `type` and `xsizemode` for more info." + }, + "yref": { + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "role": "info", + "editType": "calc", + "description": "Sets the annotation's y coordinate axis. If set to an y axis id (e.g. *y* or *y2*), the `y` position refers to an y coordinate If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top)." + }, + "ysizemode": { + "valType": "enumerated", + "values": [ + "scaled", + "pixel" + ], + "dflt": "scaled", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the shapes's sizing mode along the y axis. If set to *scaled*, `y0`, `y1` and y coordinates within `path` refer to data values on the y axis or a fraction of the plot area's height (`yref` set to *paper*). If set to *pixel*, `yanchor` specifies the y position in terms of data or plot fraction but `y0`, `y1` and y coordinates within `path` are pixels relative to `yanchor`. This way, the shape can have a fixed height while maintaining a position relative to data or plot fraction." + }, + "yanchor": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Only relevant in conjunction with `ysizemode` set to *pixel*. Specifies the anchor point on the y axis to which `y0`, `y1` and y coordinates within `path` are relative to. E.g. useful to attach a pixel sized shape to a certain data value. No effect when `ysizemode` not set to *pixel*." + }, + "y0": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the shape's starting y position. See `type` and `ysizemode` for more info." + }, + "y1": { + "valType": "any", + "role": "info", + "editType": "calc+arraydraw", + "description": "Sets the shape's end y position. See `type` and `ysizemode` for more info." + }, + "path": { + "valType": "string", + "role": "info", + "editType": "calc+arraydraw", + "description": "For `type` *path* - a valid SVG path with the pixel values replaced by data values in `xsizemode`/`ysizemode` being *scaled* and taken unmodified as pixels relative to `xanchor` and `yanchor` in case of *pixel* size mode. There are a few restrictions / quirks only absolute instructions, not relative. So the allowed segments are: M, L, H, V, Q, C, T, S, and Z arcs (A) are not allowed because radius rx and ry are relative. In the future we could consider supporting relative commands, but we would have to decide on how to handle date and log axes. Note that even as is, Q and C Bezier paths that are smooth on linear axes may not be smooth on log, and vice versa. no chained \"polybezier\" commands - specify the segment type for each one. On category axes, values are numbers scaled to the serial numbers of categories because using the categories themselves there would be no way to describe fractional positions On data axes: because space and T are both normal components of path strings, we can't use either to separate date from time parts. Therefore we'll use underscore for this purpose: 2015-02-21_13:45:56.789" + }, + "opacity": { + "valType": "number", + "min": 0, + "max": 1, + "dflt": 1, + "role": "info", + "editType": "arraydraw", + "description": "Sets the opacity of the shape." + }, + "line": { + "color": { + "valType": "color", + "role": "style", + "editType": "arraydraw", + "anim": true, + "description": "Sets the line color." + }, + "width": { + "valType": "number", + "min": 0, + "dflt": 2, + "role": "style", + "editType": "calc+arraydraw", + "anim": true, + "description": "Sets the line width (in px)." + }, + "dash": { + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ], + "dflt": "solid", + "role": "style", + "editType": "arraydraw", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*)." + }, + "role": "object", + "editType": "calc+arraydraw" + }, + "fillcolor": { + "valType": "color", + "dflt": "rgba(0,0,0,0)", + "role": "info", + "editType": "arraydraw", + "description": "Sets the color filling the shape's interior." + }, + "editType": "arraydraw", + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "images": { + "items": { + "image": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "arraydraw", + "description": "Determines whether or not this image is visible." + }, + "source": { + "valType": "string", + "role": "info", + "editType": "arraydraw", + "description": "Specifies the URL of the image to be used. The URL must be accessible from the domain where the plot code is run, and can be either relative or absolute." + }, + "layer": { + "valType": "enumerated", + "values": [ + "below", + "above" + ], + "dflt": "above", + "role": "info", + "editType": "arraydraw", + "description": "Specifies whether images are drawn below or above traces. When `xref` and `yref` are both set to `paper`, image is drawn below the entire plot area." + }, + "sizex": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "arraydraw", + "description": "Sets the image container size horizontally. The image will be sized based on the `position` value. When `xref` is set to `paper`, units are sized relative to the plot width." + }, + "sizey": { + "valType": "number", + "role": "info", + "dflt": 0, + "editType": "arraydraw", + "description": "Sets the image container size vertically. The image will be sized based on the `position` value. When `yref` is set to `paper`, units are sized relative to the plot height." + }, + "sizing": { + "valType": "enumerated", + "values": [ + "fill", + "contain", + "stretch" + ], + "dflt": "contain", + "role": "info", + "editType": "arraydraw", + "description": "Specifies which dimension of the image to constrain." + }, + "opacity": { + "valType": "number", + "role": "info", + "min": 0, + "max": 1, + "dflt": 1, + "editType": "arraydraw", + "description": "Sets the opacity of the image." + }, + "x": { + "valType": "any", + "role": "info", + "dflt": 0, + "editType": "arraydraw", + "description": "Sets the image's x position. When `xref` is set to `paper`, units are sized relative to the plot height. See `xref` for more info" + }, + "y": { + "valType": "any", + "role": "info", + "dflt": 0, + "editType": "arraydraw", + "description": "Sets the image's y position. When `yref` is set to `paper`, units are sized relative to the plot height. See `yref` for more info" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "info", + "editType": "arraydraw", + "description": "Sets the anchor for the x position" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "dflt": "top", + "role": "info", + "editType": "arraydraw", + "description": "Sets the anchor for the y position." + }, + "xref": { + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?$/" + ], + "dflt": "paper", + "role": "info", + "editType": "arraydraw", + "description": "Sets the images's x coordinate axis. If set to a x axis id (e.g. *x* or *x2*), the `x` position refers to an x data coordinate If set to *paper*, the `x` position refers to the distance from the left of plot in normalized coordinates where *0* (*1*) corresponds to the left (right)." + }, + "yref": { + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?$/" + ], + "dflt": "paper", + "role": "info", + "editType": "arraydraw", + "description": "Sets the images's y coordinate axis. If set to a y axis id (e.g. *y* or *y2*), the `y` position refers to a y data coordinate. If set to *paper*, the `y` position refers to the distance from the bottom of the plot in normalized coordinates where *0* (*1*) corresponds to the bottom (top)." + }, + "editType": "arraydraw", + "name": { + "valType": "string", + "role": "style", + "editType": "none", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "updatemenus": { + "items": { + "updatemenu": { + "_arrayAttrRegexps": [ + {} + ], + "visible": { + "valType": "boolean", + "role": "info", + "description": "Determines whether or not the update menu is visible.", + "editType": "arraydraw" + }, + "type": { + "valType": "enumerated", + "values": [ + "dropdown", + "buttons" + ], + "dflt": "dropdown", + "role": "info", + "description": "Determines whether the buttons are accessible via a dropdown menu or whether the buttons are stacked horizontally or vertically", + "editType": "arraydraw" + }, + "direction": { + "valType": "enumerated", + "values": [ + "left", + "right", + "up", + "down" + ], + "dflt": "down", + "role": "info", + "description": "Determines the direction in which the buttons are laid out, whether in a dropdown menu or a row/column of buttons. For `left` and `up`, the buttons will still appear in left-to-right or top-to-bottom order respectively.", + "editType": "arraydraw" + }, + "active": { + "valType": "integer", + "role": "info", + "min": -1, + "dflt": 0, + "description": "Determines which button (by index starting from 0) is considered active.", + "editType": "arraydraw" + }, + "showactive": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Highlights active dropdown item or active button if true.", + "editType": "arraydraw" + }, + "buttons": { + "items": { + "button": { + "visible": { + "valType": "boolean", + "role": "info", + "description": "Determines whether or not this button is visible.", + "editType": "arraydraw" + }, + "method": { + "valType": "enumerated", + "values": [ + "restyle", + "relayout", + "animate", + "update", + "skip" + ], + "dflt": "restyle", + "role": "info", + "description": "Sets the Plotly method to be called on click. If the `skip` method is used, the API updatemenu will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to updatemenu events manually via JavaScript.", + "editType": "arraydraw" + }, + "args": { + "valType": "info_array", + "role": "info", + "freeLength": true, + "items": [ + { + "valType": "any", + "editType": "arraydraw" + }, + { + "valType": "any", + "editType": "arraydraw" + }, + { + "valType": "any", + "editType": "arraydraw" + } + ], + "description": "Sets the arguments values to be passed to the Plotly method set in `method` on click.", + "editType": "arraydraw" + }, + "label": { + "valType": "string", + "role": "info", + "dflt": "", + "description": "Sets the text label to appear on the button.", + "editType": "arraydraw" + }, + "execute": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_buttonclicked` method and executing the API command manually without losing the benefit of the updatemenu automatically binding to the state of the plot through the specification of `method` and `args`.", + "editType": "arraydraw" + }, + "name": { + "valType": "string", + "role": "style", + "editType": "arraydraw", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "arraydraw", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "editType": "arraydraw", + "role": "object" + } + }, + "role": "object" + }, + "x": { + "valType": "number", + "min": -2, + "max": 3, + "dflt": -0.05, + "role": "style", + "description": "Sets the x position (in normalized coordinates) of the update menu.", + "editType": "arraydraw" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ], + "dflt": "right", + "role": "info", + "description": "Sets the update menu's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "editType": "arraydraw" + }, + "y": { + "valType": "number", + "min": -2, + "max": 3, + "dflt": 1, + "role": "style", + "description": "Sets the y position (in normalized coordinates) of the update menu.", + "editType": "arraydraw" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ], + "dflt": "top", + "role": "info", + "description": "Sets the update menu's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "editType": "arraydraw" + }, + "pad": { + "t": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) along the top of the component." + }, + "r": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) on the right side of the component." + }, + "b": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) along the bottom of the component." + }, + "l": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) on the left side of the component." + }, + "editType": "arraydraw", + "description": "Sets the padding around the buttons or dropdown menu.", + "role": "object" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "arraydraw" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "arraydraw" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "arraydraw" + }, + "description": "Sets the font of the update menu button text.", + "editType": "arraydraw", + "role": "object" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "description": "Sets the background color of the update menu buttons.", + "editType": "arraydraw" + }, + "bordercolor": { + "valType": "color", + "dflt": "#BEC8D9", + "role": "style", + "description": "Sets the color of the border enclosing the update menu.", + "editType": "arraydraw" + }, + "borderwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "arraydraw", + "description": "Sets the width (in px) of the border enclosing the update menu." + }, + "name": { + "valType": "string", + "role": "style", + "editType": "arraydraw", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "arraydraw", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "editType": "arraydraw", + "role": "object" + } + }, + "role": "object" + }, + "sliders": { + "items": { + "slider": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Determines whether or not the slider is visible.", + "editType": "arraydraw" + }, + "active": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 0, + "description": "Determines which button (by index starting from 0) is considered active.", + "editType": "arraydraw" + }, + "steps": { + "items": { + "step": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Determines whether or not this step is included in the slider.", + "editType": "arraydraw" + }, + "method": { + "valType": "enumerated", + "values": [ + "restyle", + "relayout", + "animate", + "update", + "skip" + ], + "dflt": "restyle", + "role": "info", + "description": "Sets the Plotly method to be called when the slider value is changed. If the `skip` method is used, the API slider will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to slider events manually via JavaScript.", + "editType": "arraydraw" + }, + "args": { + "valType": "info_array", + "role": "info", + "freeLength": true, + "items": [ + { + "valType": "any", + "editType": "arraydraw" + }, + { + "valType": "any", + "editType": "arraydraw" + }, + { + "valType": "any", + "editType": "arraydraw" + } + ], + "description": "Sets the arguments values to be passed to the Plotly method set in `method` on slide.", + "editType": "arraydraw" + }, + "label": { + "valType": "string", + "role": "info", + "description": "Sets the text label to appear on the slider", + "editType": "arraydraw" + }, + "value": { + "valType": "string", + "role": "info", + "description": "Sets the value of the slider step, used to refer to the step programatically. Defaults to the slider label if not provided.", + "editType": "arraydraw" + }, + "execute": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_sliderchange` method and executing the API command manually without losing the benefit of the slider automatically binding to the state of the plot through the specification of `method` and `args`.", + "editType": "arraydraw" + }, + "name": { + "valType": "string", + "role": "style", + "editType": "arraydraw", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "arraydraw", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "editType": "arraydraw", + "role": "object" + } + }, + "role": "object" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this slider length is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "arraydraw" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the slider This measure excludes the padding of both ends. That is, the slider's length is this length minus the padding on both ends.", + "editType": "arraydraw" + }, + "x": { + "valType": "number", + "min": -2, + "max": 3, + "dflt": 0, + "role": "style", + "description": "Sets the x position (in normalized coordinates) of the slider.", + "editType": "arraydraw" + }, + "pad": { + "t": { + "valType": "number", + "dflt": 20, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) along the top of the component." + }, + "r": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) on the right side of the component." + }, + "b": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) along the bottom of the component." + }, + "l": { + "valType": "number", + "dflt": 0, + "role": "style", + "editType": "arraydraw", + "description": "The amount of padding (in px) on the left side of the component." + }, + "editType": "arraydraw", + "description": "Set the padding of the slider component along each side.", + "role": "object" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ], + "dflt": "left", + "role": "info", + "description": "Sets the slider's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "editType": "arraydraw" + }, + "y": { + "valType": "number", + "min": -2, + "max": 3, + "dflt": 0, + "role": "style", + "description": "Sets the y position (in normalized coordinates) of the slider.", + "editType": "arraydraw" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ], + "dflt": "top", + "role": "info", + "description": "Sets the slider's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "editType": "arraydraw" + }, + "transition": { + "duration": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 150, + "description": "Sets the duration of the slider transition", + "editType": "arraydraw" + }, + "easing": { + "valType": "enumerated", + "values": [ + "linear", + "quad", + "cubic", + "sin", + "exp", + "circle", + "elastic", + "back", + "bounce", + "linear-in", + "quad-in", + "cubic-in", + "sin-in", + "exp-in", + "circle-in", + "elastic-in", + "back-in", + "bounce-in", + "linear-out", + "quad-out", + "cubic-out", + "sin-out", + "exp-out", + "circle-out", + "elastic-out", + "back-out", + "bounce-out", + "linear-in-out", + "quad-in-out", + "cubic-in-out", + "sin-in-out", + "exp-in-out", + "circle-in-out", + "elastic-in-out", + "back-in-out", + "bounce-in-out" + ], + "role": "info", + "dflt": "cubic-in-out", + "description": "Sets the easing function of the slider transition", + "editType": "arraydraw" + }, + "editType": "arraydraw", + "role": "object" + }, + "currentvalue": { + "visible": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Shows the currently-selected value above the slider.", + "editType": "arraydraw" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "info", + "description": "The alignment of the value readout relative to the length of the slider.", + "editType": "arraydraw" + }, + "offset": { + "valType": "number", + "dflt": 10, + "role": "info", + "description": "The amount of space, in pixels, between the current value label and the slider.", + "editType": "arraydraw" + }, + "prefix": { + "valType": "string", + "role": "info", + "description": "When currentvalue.visible is true, this sets the prefix of the label.", + "editType": "arraydraw" + }, + "suffix": { + "valType": "string", + "role": "info", + "description": "When currentvalue.visible is true, this sets the suffix of the label.", + "editType": "arraydraw" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "arraydraw" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "arraydraw" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "arraydraw" + }, + "description": "Sets the font of the current value label text.", + "editType": "arraydraw", + "role": "object" + }, + "editType": "arraydraw", + "role": "object" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "arraydraw" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "arraydraw" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "arraydraw" + }, + "description": "Sets the font of the slider step labels.", + "editType": "arraydraw", + "role": "object" + }, + "activebgcolor": { + "valType": "color", + "role": "style", + "dflt": "#dbdde0", + "description": "Sets the background color of the slider grip while dragging.", + "editType": "arraydraw" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "#f8fafc", + "description": "Sets the background color of the slider.", + "editType": "arraydraw" + }, + "bordercolor": { + "valType": "color", + "dflt": "#bec8d9", + "role": "style", + "description": "Sets the color of the border enclosing the slider.", + "editType": "arraydraw" + }, + "borderwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the width (in px) of the border enclosing the slider.", + "editType": "arraydraw" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 7, + "role": "style", + "description": "Sets the length in pixels of step tick marks", + "editType": "arraydraw" + }, + "tickcolor": { + "valType": "color", + "dflt": "#333", + "role": "style", + "description": "Sets the color of the border enclosing the slider.", + "editType": "arraydraw" + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the tick width (in px).", + "editType": "arraydraw" + }, + "minorticklen": { + "valType": "number", + "min": 0, + "dflt": 4, + "role": "style", + "description": "Sets the length in pixels of minor step tick marks", + "editType": "arraydraw" + }, + "name": { + "valType": "string", + "role": "style", + "editType": "arraydraw", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "arraydraw", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "editType": "arraydraw", + "role": "object" + } + }, + "role": "object" + }, + "colorscale": { + "editType": "calc", + "sequential": { + "valType": "colorscale", + "dflt": [ + [ + 0, + "rgb(220,220,220)" + ], + [ + 0.2, + "rgb(245,195,157)" + ], + [ + 0.4, + "rgb(245,160,105)" + ], + [ + 1, + "rgb(178,10,28)" + ] + ], + "role": "style", + "editType": "calc", + "description": "Sets the default sequential colorscale for positive values. Note that `autocolorscale` must be true for this attribute to work." + }, + "sequentialminus": { + "valType": "colorscale", + "dflt": [ + [ + 0, + "rgb(5,10,172)" + ], + [ + 0.35, + "rgb(40,60,190)" + ], + [ + 0.5, + "rgb(70,100,245)" + ], + [ + 0.6, + "rgb(90,120,245)" + ], + [ + 0.7, + "rgb(106,137,247)" + ], + [ + 1, + "rgb(220,220,220)" + ] + ], + "role": "style", + "editType": "calc", + "description": "Sets the default sequential colorscale for negative values. Note that `autocolorscale` must be true for this attribute to work." + }, + "diverging": { + "valType": "colorscale", + "dflt": [ + [ + 0, + "rgb(5,10,172)" + ], + [ + 0.35, + "rgb(106,137,247)" + ], + [ + 0.5, + "rgb(190,190,190)" + ], + [ + 0.6, + "rgb(220,170,132)" + ], + [ + 0.7, + "rgb(230,145,90)" + ], + [ + 1, + "rgb(178,10,28)" + ] + ], + "role": "style", + "editType": "calc", + "description": "Sets the default diverging colorscale. Note that `autocolorscale` must be true for this attribute to work." + }, + "role": "object" + }, + "coloraxis": { + "_isSubplotObj": true, + "editType": "calc", + "description": "", + "cauto": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether or not the color domain is computed with respect to the input data (here corresponding trace color array(s)) or the bounds set in `cmin` and `cmax` Defaults to `false` when `cmin` and `cmax` are set by the user." + }, + "cmin": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the lower bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmax` must be set as well." + }, + "cmax": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "description": "Sets the upper bound of the color domain. Value should have the same units as corresponding trace color array(s) and if set, `cmin` must be set as well." + }, + "cmid": { + "valType": "number", + "role": "info", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "description": "Sets the mid-point of the color domain by scaling `cmin` and/or `cmax` to be equidistant to this point. Value should have the same units as corresponding trace color array(s). Has no effect when `cauto` is `false`." + }, + "colorscale": { + "valType": "colorscale", + "role": "style", + "editType": "calc", + "dflt": null, + "impliedEdits": { + "autocolorscale": false + }, + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use`cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis." + }, + "autocolorscale": { + "valType": "boolean", + "role": "style", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "description": "Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed." + }, + "reversescale": { + "valType": "boolean", + "role": "style", + "dflt": false, + "editType": "plot", + "description": "Reverses the color mapping if true. If true, `cmin` will correspond to the last color in the array and `cmax` will correspond to the first color." + }, + "showscale": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "calc", + "description": "Determines whether or not a colorbar is displayed for this trace." + }, + "colorbar": { + "thicknessmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "style", + "dflt": "pixels", + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "editType": "colorbars" + }, + "thickness": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 30, + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "editType": "colorbars" + }, + "lenmode": { + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ], + "role": "info", + "dflt": "fraction", + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "editType": "colorbars" + }, + "len": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "editType": "colorbars" + }, + "x": { + "valType": "number", + "dflt": 1.02, + "min": -2, + "max": 3, + "role": "style", + "description": "Sets the x position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "xanchor": { + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ], + "dflt": "left", + "role": "style", + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "editType": "colorbars" + }, + "xpad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the x direction.", + "editType": "colorbars" + }, + "y": { + "valType": "number", + "role": "style", + "dflt": 0.5, + "min": -2, + "max": 3, + "description": "Sets the y position of the color bar (in plot fraction).", + "editType": "colorbars" + }, + "yanchor": { + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ], + "role": "style", + "dflt": "middle", + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "editType": "colorbars" + }, + "ypad": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 10, + "description": "Sets the amount of padding (in px) along the y direction.", + "editType": "colorbars" + }, + "outlinecolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "outlinewidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the width (in px) of the axis line." + }, + "bordercolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the axis line color." + }, + "borderwidth": { + "valType": "number", + "role": "style", + "min": 0, + "dflt": 0, + "description": "Sets the width (in px) or the border enclosing this color bar.", + "editType": "colorbars" + }, + "bgcolor": { + "valType": "color", + "role": "style", + "dflt": "rgba(0,0,0,0)", + "description": "Sets the color of padded area.", + "editType": "colorbars" + }, + "tickmode": { + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ], + "role": "info", + "editType": "colorbars", + "impliedEdits": {}, + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided)." + }, + "nticks": { + "valType": "integer", + "min": 0, + "dflt": 0, + "role": "style", + "editType": "colorbars", + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*." + }, + "tick0": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears." + }, + "dtick": { + "valType": "any", + "role": "style", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*" + }, + "tickvals": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "role": "data" + }, + "ticktext": { + "valType": "data_array", + "editType": "colorbars", + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "role": "data" + }, + "ticks": { + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ], + "role": "style", + "editType": "colorbars", + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "" + }, + "ticklen": { + "valType": "number", + "min": 0, + "dflt": 5, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick length (in px)." + }, + "tickwidth": { + "valType": "number", + "min": 0, + "dflt": 1, + "role": "style", + "editType": "colorbars", + "description": "Sets the tick width (in px)." + }, + "tickcolor": { + "valType": "color", + "dflt": "#444", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick color." + }, + "showticklabels": { + "valType": "boolean", + "dflt": true, + "role": "style", + "editType": "colorbars", + "description": "Determines whether or not the tick labels are drawn." + }, + "tickfont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "role": "object" + }, + "tickangle": { + "valType": "angle", + "dflt": "auto", + "role": "style", + "editType": "colorbars", + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically." + }, + "tickformat": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "enabled": { + "valType": "boolean", + "role": "info", + "dflt": true, + "editType": "colorbars", + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`." + }, + "dtickrange": { + "valType": "info_array", + "role": "info", + "items": [ + { + "valType": "any", + "editType": "colorbars" + }, + { + "valType": "any", + "editType": "colorbars" + } + ], + "editType": "colorbars", + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*" + }, + "value": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "string - dtickformat for described zoom level, the same as *tickformat*" + }, + "editType": "colorbars", + "name": { + "valType": "string", + "role": "style", + "editType": "colorbars", + "description": "When used in a template, named items are created in the output figure in addition to any items the figure already has in this array. You can modify these items in the output figure by making your own item with `templateitemname` matching this `name` alongside your modifications (including `visible: false` or `enabled: false` to hide it). Has no effect outside of a template." + }, + "templateitemname": { + "valType": "string", + "role": "info", + "editType": "colorbars", + "description": "Used to refer to a named item in this array in the template. Named items from the template will be created even without a matching item in the input figure, but you can modify one by making an item with `templateitemname` matching its `name`, alongside your modifications (including `visible: false` or `enabled: false` to hide it). If there is no template or no matching item, this item will be hidden unless you explicitly show it with `visible: true`." + }, + "role": "object" + } + }, + "role": "object" + }, + "tickprefix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label prefix." + }, + "showtickprefix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden." + }, + "ticksuffix": { + "valType": "string", + "dflt": "", + "role": "style", + "editType": "colorbars", + "description": "Sets a tick label suffix." + }, + "showticksuffix": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "Same as `showtickprefix` but for tick suffixes." + }, + "separatethousands": { + "valType": "boolean", + "dflt": false, + "role": "style", + "editType": "colorbars", + "description": "If \"true\", even 4-digit integers are separated" + }, + "exponentformat": { + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ], + "dflt": "B", + "role": "style", + "editType": "colorbars", + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B." + }, + "showexponent": { + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ], + "dflt": "all", + "role": "style", + "editType": "colorbars", + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear." + }, + "title": { + "text": { + "valType": "string", + "role": "info", + "description": "Sets the title of the color bar. Note that before the existence of `title.text`, the title's contents used to be defined as the `title` attribute itself. This behavior has been deprecated.", + "editType": "colorbars" + }, + "font": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Sets this color bar's title font. Note that the title's font used to be set by the now deprecated `titlefont` attribute.", + "editType": "colorbars", + "role": "object" + }, + "side": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Determines the location of color bar's title with respect to the color bar. Note that the title's location used to be set by the now deprecated `titleside` attribute.", + "editType": "colorbars" + }, + "editType": "colorbars", + "role": "object" + }, + "_deprecated": { + "title": { + "valType": "string", + "role": "info", + "description": "Deprecated in favor of color bar's `title.text`. Note that value of color bar's `title` is no longer a simple *string* but a set of sub-attributes.", + "editType": "colorbars" + }, + "titlefont": { + "family": { + "valType": "string", + "role": "style", + "noBlank": true, + "strict": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars" + }, + "size": { + "valType": "number", + "role": "style", + "min": 1, + "editType": "colorbars" + }, + "color": { + "valType": "color", + "role": "style", + "editType": "colorbars" + }, + "description": "Deprecated in favor of color bar's `title.font`.", + "editType": "colorbars" + }, + "titleside": { + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ], + "role": "style", + "dflt": "top", + "description": "Deprecated in favor of color bar's `title.side`.", + "editType": "colorbars" + } + }, + "editType": "colorbars", + "role": "object", + "tickvalssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none" + }, + "ticktextsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none" + } + }, + "role": "object" + }, + "metasrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for meta .", + "editType": "none" + } + } + }, + "transforms": { + "aggregate": { + "attributes": { + "enabled": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "calc", + "description": "Determines whether this aggregate transform is enabled or disabled." + }, + "groups": { + "valType": "string", + "strict": true, + "noBlank": true, + "arrayOk": true, + "dflt": "x", + "role": "info", + "editType": "calc", + "description": "Sets the grouping target to which the aggregation is applied. Data points with matching group values will be coalesced into one point, using the supplied aggregation functions to reduce data in other data arrays. If a string, `groups` is assumed to be a reference to a data array in the parent trace object. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate about the marker color array. If an array, `groups` is itself the data array by which we aggregate." + }, + "aggregations": { + "items": { + "aggregation": { + "target": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "A reference to the data array in the parent trace to aggregate. To aggregate by nested variables, use *.* to access them. For example, set `groups` to *marker.color* to aggregate over the marker color array. The referenced array must already exist, unless `func` is *count*, and each array may only be referenced once." + }, + "func": { + "valType": "enumerated", + "values": [ + "count", + "sum", + "avg", + "median", + "mode", + "rms", + "stddev", + "min", + "max", + "first", + "last", + "change", + "range" + ], + "dflt": "first", + "role": "info", + "editType": "calc", + "description": "Sets the aggregation function. All values from the linked `target`, corresponding to the same value in the `groups` array, are collected and reduced by this function. *count* is simply the number of values in the `groups` array, so does not even require the linked array to exist. *first* (*last*) is just the first (last) linked value. Invalid values are ignored, so for example in *avg* they do not contribute to either the numerator or the denominator. Any data type (numeric, date, category) may be aggregated with any function, even though in certain cases it is unlikely to make sense, for example a sum of dates or average of categories. *median* will return the average of the two central values if there is an even count. *mode* will return the first value to reach the maximum count, in case of a tie. *change* will return the difference between the first and last linked values. *range* will return the difference between the min and max linked values." + }, + "funcmode": { + "valType": "enumerated", + "values": [ + "sample", + "population" + ], + "dflt": "sample", + "role": "info", + "editType": "calc", + "description": "*stddev* supports two formula variants: *sample* (normalize by N-1) and *population* (normalize by N)." + }, + "enabled": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "calc", + "description": "Determines whether this aggregation function is enabled or disabled." + }, + "editType": "calc", + "role": "object" + } + }, + "role": "object" + }, + "editType": "calc", + "groupssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for groups .", + "editType": "none" + } + } + }, + "filter": { + "attributes": { + "enabled": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "calc", + "description": "Determines whether this filter transform is enabled or disabled." + }, + "target": { + "valType": "string", + "strict": true, + "noBlank": true, + "arrayOk": true, + "dflt": "x", + "role": "info", + "editType": "calc", + "description": "Sets the filter target by which the filter is applied. If a string, `target` is assumed to be a reference to a data array in the parent trace object. To filter about nested variables, use *.* to access them. For example, set `target` to *marker.color* to filter about the marker color array. If an array, `target` is then the data array by which the filter is applied." + }, + "operation": { + "valType": "enumerated", + "values": [ + "=", + "!=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[", + "{}", + "}{" + ], + "dflt": "=", + "role": "info", + "editType": "calc", + "description": "Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values" + }, + "value": { + "valType": "any", + "dflt": 0, + "role": "info", + "editType": "calc", + "description": "Sets the value or values by which to filter. Values are expected to be in the same type as the data linked to `target`. When `operation` is set to one of the comparison values (=,!=,<,>=,>,<=) `value` is expected to be a number or a string. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) `value` is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set values ({},}{) `value` is expected to be an array with as many items as the desired set elements." + }, + "preservegaps": { + "valType": "boolean", + "dflt": false, + "role": "info", + "editType": "calc", + "description": "Determines whether or not gaps in data arrays produced by the filter operation are preserved. Setting this to *true* might be useful when plotting a line chart with `connectgaps` set to *false*." + }, + "editType": "calc", + "valuecalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `value`, if it is a date." + }, + "targetcalendar": { + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ], + "role": "info", + "editType": "calc", + "dflt": "gregorian", + "description": "Sets the calendar system to use for `target`, if it is an array of dates. If `target` is a string (eg *x*) we use the corresponding trace attribute (eg `xcalendar`) if it exists, even if `targetcalendar` is provided." + }, + "targetsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for target .", + "editType": "none" + } + } + }, + "groupby": { + "attributes": { + "enabled": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "calc", + "description": "Determines whether this group-by transform is enabled or disabled." + }, + "groups": { + "valType": "data_array", + "dflt": [], + "role": "data", + "editType": "calc", + "description": "Sets the groups in which the trace data will be split. For example, with `x` set to *[1, 2, 3, 4]* and `groups` set to *['a', 'b', 'a', 'b']*, the groupby transform with split in one trace with `x` [1, 3] and one trace with `x` [2, 4]." + }, + "nameformat": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "Pattern by which grouped traces are named. If only one trace is present, defaults to the group name (`\"%{group}\"`), otherwise defaults to the group name with trace name (`\"%{group} (%{trace})\"`). Available escape sequences are `%{group}`, which inserts the group name, and `%{trace}`, which inserts the trace name. If grouping GDP data by country when more than one trace is present, for example, the default \"%{group} (%{trace})\" would return \"Monaco (GDP per capita)\"." + }, + "styles": { + "items": { + "style": { + "target": { + "valType": "string", + "role": "info", + "editType": "calc", + "description": "The group value which receives these styles." + }, + "value": { + "valType": "any", + "role": "info", + "dflt": {}, + "editType": "calc", + "description": "Sets each group styles. For example, with `groups` set to *['a', 'b', 'a', 'b']* and `styles` set to *[{target: 'a', value: { marker: { color: 'red' } }}] marker points in group *'a'* will be drawn in red.", + "_compareAsJSON": true + }, + "editType": "calc", + "role": "object" + } + }, + "role": "object" + }, + "editType": "calc", + "groupssrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for groups .", + "editType": "none" + } + } + }, + "sort": { + "attributes": { + "enabled": { + "valType": "boolean", + "dflt": true, + "role": "info", + "editType": "calc", + "description": "Determines whether this sort transform is enabled or disabled." + }, + "target": { + "valType": "string", + "strict": true, + "noBlank": true, + "arrayOk": true, + "dflt": "x", + "role": "info", + "editType": "calc", + "description": "Sets the target by which the sort transform is applied. If a string, *target* is assumed to be a reference to a data array in the parent trace object. To sort about nested variables, use *.* to access them. For example, set `target` to *marker.size* to sort about the marker size array. If an array, *target* is then the data array by which the sort transform is applied." + }, + "order": { + "valType": "enumerated", + "values": [ + "ascending", + "descending" + ], + "dflt": "ascending", + "role": "info", + "editType": "calc", + "description": "Sets the sort transform order." + }, + "editType": "calc", + "targetsrc": { + "valType": "string", + "role": "info", + "description": "Sets the source reference on plot.ly for target .", + "editType": "none" + } + } + } + }, + "frames": { + "items": { + "frames_entry": { + "group": { + "valType": "string", + "role": "info", + "description": "An identifier that specifies the group to which the frame belongs, used by animate to select a subset of frames." + }, + "name": { + "valType": "string", + "role": "info", + "description": "A label by which to identify the frame" + }, + "traces": { + "valType": "any", + "role": "info", + "description": "A list of trace indices that identify the respective traces in the data attribute" + }, + "baseframe": { + "valType": "string", + "role": "info", + "description": "The name of the frame into which this frame's properties are merged before applying. This is used to unify properties and avoid needing to specify the same values for the same properties in multiple frames." + }, + "data": { + "valType": "any", + "role": "object", + "description": "A list of traces this frame modifies. The format is identical to the normal trace definition." + }, + "layout": { + "valType": "any", + "role": "object", + "description": "Layout properties which this frame modifies. The format is identical to the normal layout definition." + }, + "role": "object" + } + }, + "role": "object" + }, + "animation": { + "mode": { + "valType": "enumerated", + "dflt": "afterall", + "role": "info", + "values": [ + "immediate", + "next", + "afterall" + ], + "description": "Describes how a new animate call interacts with currently-running animations. If `immediate`, current animations are interrupted and the new animation is started. If `next`, the current frame is allowed to complete, after which the new animation is started. If `afterall` all existing frames are animated to completion before the new animation is started." + }, + "direction": { + "valType": "enumerated", + "role": "info", + "values": [ + "forward", + "reverse" + ], + "dflt": "forward", + "description": "The direction in which to play the frames triggered by the animation call" + }, + "fromcurrent": { + "valType": "boolean", + "dflt": false, + "role": "info", + "description": "Play frames starting at the current frame instead of the beginning." + }, + "frame": { + "duration": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 500, + "description": "The duration in milliseconds of each frame. If greater than the frame duration, it will be limited to the frame duration." + }, + "redraw": { + "valType": "boolean", + "role": "info", + "dflt": true, + "description": "Redraw the plot at completion of the transition. This is desirable for transitions that include properties that cannot be transitioned, but may significantly slow down updates that do not require a full redraw of the plot" + }, + "role": "object" + }, + "transition": { + "duration": { + "valType": "number", + "role": "info", + "min": 0, + "dflt": 500, + "editType": "none", + "description": "The duration of the transition, in milliseconds. If equal to zero, updates are synchronous." + }, + "easing": { + "valType": "enumerated", + "dflt": "cubic-in-out", + "values": [ + "linear", + "quad", + "cubic", + "sin", + "exp", + "circle", + "elastic", + "back", + "bounce", + "linear-in", + "quad-in", + "cubic-in", + "sin-in", + "exp-in", + "circle-in", + "elastic-in", + "back-in", + "bounce-in", + "linear-out", + "quad-out", + "cubic-out", + "sin-out", + "exp-out", + "circle-out", + "elastic-out", + "back-out", + "bounce-out", + "linear-in-out", + "quad-in-out", + "cubic-in-out", + "sin-in-out", + "exp-in-out", + "circle-in-out", + "elastic-in-out", + "back-in-out", + "bounce-in-out" + ], + "role": "info", + "editType": "none", + "description": "The easing function used for the transition" + }, + "ordering": { + "valType": "enumerated", + "values": [ + "layout first", + "traces first" + ], + "dflt": "layout first", + "role": "info", + "editType": "none", + "description": "Determines whether the figure's layout or traces smoothly transitions during updates that make both traces and layout change." + }, + "role": "object" + } + }, + "config": { + "staticPlot": { + "valType": "boolean", + "dflt": false, + "description": "Determines whether the graphs are interactive or not. If *false*, no interactivity, for export or image generation." + }, + "plotlyServerURL": { + "valType": "string", + "dflt": "https://plot.ly", + "description": "Sets base URL for the 'Edit in Chart Studio' (aka sendDataToCloud) mode bar button and the showLink/sendData on-graph link" + }, + "editable": { + "valType": "boolean", + "dflt": false, + "description": "Determines whether the graph is editable or not. Sets all pieces of `edits` unless a separate `edits` config item overrides individual parts." + }, + "edits": { + "annotationPosition": { + "valType": "boolean", + "dflt": false, + "description": "Determines if the main anchor of the annotation is editable. The main anchor corresponds to the text (if no arrow) or the arrow (which drags the whole thing leaving the arrow length & direction unchanged)." + }, + "annotationTail": { + "valType": "boolean", + "dflt": false, + "description": "Has only an effect for annotations with arrows. Enables changing the length and direction of the arrow." + }, + "annotationText": { + "valType": "boolean", + "dflt": false, + "description": "Enables editing annotation text." + }, + "axisTitleText": { + "valType": "boolean", + "dflt": false, + "description": "Enables editing axis title text." + }, + "colorbarPosition": { + "valType": "boolean", + "dflt": false, + "description": "Enables moving colorbars." + }, + "colorbarTitleText": { + "valType": "boolean", + "dflt": false, + "description": "Enables editing colorbar title text." + }, + "legendPosition": { + "valType": "boolean", + "dflt": false, + "description": "Enables moving the legend." + }, + "legendText": { + "valType": "boolean", + "dflt": false, + "description": "Enables editing the trace name fields from the legend" + }, + "shapePosition": { + "valType": "boolean", + "dflt": false, + "description": "Enables moving shapes." + }, + "titleText": { + "valType": "boolean", + "dflt": false, + "description": "Enables editing the global layout title." + }, + "role": "object" + }, + "autosizable": { + "valType": "boolean", + "dflt": false, + "description": "Determines whether the graphs are plotted with respect to layout.autosize:true and infer its container size." + }, + "responsive": { + "valType": "boolean", + "dflt": false, + "description": "Determines whether to change the layout size when window is resized. In v2, this option will be removed and will always be true." + }, + "fillFrame": { + "valType": "boolean", + "dflt": false, + "description": "When `layout.autosize` is turned on, determines whether the graph fills the container (the default) or the screen (if set to *true*)." + }, + "frameMargins": { + "valType": "number", + "dflt": 0, + "min": 0, + "max": 0.5, + "description": "When `layout.autosize` is turned on, set the frame margins in fraction of the graph size." + }, + "scrollZoom": { + "valType": "flaglist", + "flags": [ + "cartesian", + "gl3d", + "geo", + "mapbox" + ], + "extras": [ + true, + false + ], + "dflt": "gl3d+geo+mapbox", + "description": "Determines whether mouse wheel or two-finger scroll zooms is enable. Turned on by default for gl3d, geo and mapbox subplots (as these subplot types do not have zoombox via pan), but turned off by default for cartesian subplots. Set `scrollZoom` to *false* to disable scrolling for all subplots." + }, + "doubleClick": { + "valType": "enumerated", + "values": [ + false, + "reset", + "autosize", + "reset+autosize" + ], + "dflt": "reset+autosize", + "description": "Sets the double click interaction mode. Has an effect only in cartesian plots. If *false*, double click is disable. If *reset*, double click resets the axis ranges to their initial values. If *autosize*, double click set the axis ranges to their autorange values. If *reset+autosize*, the odd double clicks resets the axis ranges to their initial values and even double clicks set the axis ranges to their autorange values." + }, + "doubleClickDelay": { + "valType": "number", + "dflt": 300, + "min": 0, + "description": "Sets the delay for registering a double-click in ms. This is the time interval (in ms) between first mousedown and 2nd mouseup to constitute a double-click. This setting propagates to all on-subplot double clicks (except for geo and mapbox) and on-legend double clicks." + }, + "showAxisDragHandles": { + "valType": "boolean", + "dflt": true, + "description": "Set to *false* to omit cartesian axis pan/zoom drag handles." + }, + "showAxisRangeEntryBoxes": { + "valType": "boolean", + "dflt": true, + "description": "Set to *false* to omit direct range entry at the pan/zoom drag points, note that `showAxisDragHandles` must be enabled to have an effect." + }, + "showTips": { + "valType": "boolean", + "dflt": true, + "description": "Determines whether or not tips are shown while interacting with the resulting graphs." + }, + "showLink": { + "valType": "boolean", + "dflt": false, + "description": "Determines whether a link to plot.ly is displayed at the bottom right corner of resulting graphs. Use with `sendData` and `linkText`." + }, + "linkText": { + "valType": "string", + "dflt": "Edit chart", + "noBlank": true, + "description": "Sets the text appearing in the `showLink` link." + }, + "sendData": { + "valType": "boolean", + "dflt": true, + "description": "If *showLink* is true, does it contain data just link to a plot.ly file?" + }, + "showSources": { + "valType": "any", + "dflt": false, + "description": "Adds a source-displaying function to show sources on the resulting graphs." + }, + "displayModeBar": { + "valType": "enumerated", + "values": [ + "hover", + true, + false + ], + "dflt": "hover", + "description": "Determines the mode bar display mode. If *true*, the mode bar is always visible. If *false*, the mode bar is always hidden. If *hover*, the mode bar is visible while the mouse cursor is on the graph container." + }, + "showSendToCloud": { + "valType": "boolean", + "dflt": false, + "description": "Should we include a ModeBar button, labeled \"Edit in Chart Studio\", that sends this chart to plot.ly or another plotly server as specified by `plotlyServerURL` for editing, export, etc? Prior to version 1.43.0 this button was included by default, now it is opt-in using this flag. Note that this button can (depending on `plotlyServerURL`) send your data to an external server. However that server does not persist your data until you arrive at the Chart Studio and explicitly click \"Save\"." + }, + "showEditInChartStudio": { + "valType": "boolean", + "dflt": false, + "description": "Same as `showSendToCloud`, but use a pencil icon instead of a floppy-disk. Note that if both `showSendToCloud` and `showEditInChartStudio` are turned, only `showEditInChartStudio` will be honored." + }, + "modeBarButtonsToRemove": { + "valType": "any", + "dflt": [], + "description": "Remove mode bar buttons by name. See ./components/modebar/buttons.js for the list of names." + }, + "modeBarButtonsToAdd": { + "valType": "any", + "dflt": [], + "description": "Add mode bar button using config objects See ./components/modebar/buttons.js for list of arguments." + }, + "modeBarButtons": { + "valType": "any", + "dflt": false, + "description": "Define fully custom mode bar buttons as nested array, where the outer arrays represents button groups, and the inner arrays have buttons config objects or names of default buttons See ./components/modebar/buttons.js for more info." + }, + "toImageButtonOptions": { + "valType": "any", + "dflt": {}, + "description": "Statically override options for toImage modebar button allowed keys are format, filename, width, height, scale see ../components/modebar/buttons.js" + }, + "displaylogo": { + "valType": "boolean", + "dflt": true, + "description": "Determines whether or not the plotly logo is displayed on the end of the mode bar." + }, + "watermark": { + "valType": "boolean", + "dflt": false, + "description": "watermark the images with the company's logo" + }, + "plotGlPixelRatio": { + "valType": "number", + "dflt": 2, + "min": 1, + "max": 4, + "description": "Set the pixel ratio during WebGL image export. This config option was formerly named `plot3dPixelRatio` which is now deprecated." + }, + "setBackground": { + "valType": "any", + "dflt": "transparent", + "description": "Set function to add the background color (i.e. `layout.paper_color`) to a different container. This function take the graph div as first argument and the current background color as second argument. Alternatively, set to string *opaque* to ensure there is white behind it." + }, + "topojsonURL": { + "valType": "string", + "noBlank": true, + "dflt": "https://cdn.plot.ly/", + "description": "Set the URL to topojson used in geo charts. By default, the topojson files are fetched from cdn.plot.ly. For example, set this option to: /dist/topojson/ to render geographical feature using the topojson files that ship with the plotly.js module." + }, + "mapboxAccessToken": { + "valType": "string", + "dflt": null, + "description": "Mapbox access token (required to plot mapbox trace types) If using an Mapbox Atlas server, set this option to '' so that plotly.js won't attempt to authenticate to the public Mapbox server." + }, + "logging": { + "valType": "boolean", + "dflt": 1, + "description": "Turn all console logging on or off (errors will be thrown) This should ONLY be set via Plotly.setPlotConfig Available levels: 0: no logs 1: warnings and errors, but not informational messages 2: verbose logs" + }, + "queueLength": { + "valType": "integer", + "min": 0, + "dflt": 0, + "description": "Sets the length of the undo/redo queue." + }, + "globalTransforms": { + "valType": "any", + "dflt": [], + "description": "Set global transform to be applied to all traces with no specification needed" + }, + "locale": { + "valType": "string", + "dflt": "en-US", + "description": "Which localization should we use? Should be a string like 'en' or 'en-US'." + }, + "locales": { + "valType": "any", + "dflt": {}, + "description": "Localization definitions Locales can be provided either here (specific to one chart) or globally by registering them as modules. Should be an object of objects {locale: {dictionary: {...}, format: {...}}} { da: { dictionary: {'Reset axes': 'Nulstil aksler', ...}, format: {months: [...], shortMonths: [...]} }, ... } All parts are optional. When looking for translation or format fields, we look first for an exact match in a config locale, then in a registered module. If those fail, we strip off any regionalization ('en-US' -> 'en') and try each (config, registry) again. The final fallback for translation is untranslated (which is US English) and for formats is the base English (the only consequence being the last fallback date format %x is DD/MM/YYYY instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored for our automatic number formatting, but can be used in custom formats." + } + } +} \ No newline at end of file diff --git a/tools/FSharpLint.fs b/tools/FSharpLint.fs new file mode 100644 index 0000000..989dc84 --- /dev/null +++ b/tools/FSharpLint.fs @@ -0,0 +1,113 @@ +namespace Tools.Linting + +open System +open FSharpLint.Application.ConfigurationManager + +module FSharpLinter = + open FSharpLint.Application + open FSharpLint.Framework + + let private writeLine (str : string) (color : ConsoleColor) (writer : IO.TextWriter) = + let originalColour = Console.ForegroundColor + Console.ForegroundColor <- color + writer.WriteLine str + Console.ForegroundColor <- originalColour + + let private writeInfoLine (str : string) = writeLine str ConsoleColor.White Console.Out + let private writeWarningLine (str : string) = writeLine str ConsoleColor.Yellow Console.Out + let private writeErrorLine (str : string) = writeLine str ConsoleColor.Red Console.Error + + let private parserProgress = + function + | Starting(file) -> String.Format(Resources.GetString("ConsoleStartingFile"), file) |> writeInfoLine + | ReachedEnd(_, warnings) -> + String.Format(Resources.GetString("ConsoleFinishedFile"), List.length warnings) |> writeInfoLine + | Failed(file, parseException) -> + String.Format(Resources.GetString("ConsoleFailedToParseFile"), file) |> writeErrorLine + "Exception Message:" + Environment.NewLine + parseException.Message + Environment.NewLine + + "Exception Stack Trace:" + Environment.NewLine + parseException.StackTrace + Environment.NewLine + |> writeErrorLine + + let mutable private collectWarning = List.empty + + let private getWarnings() = + match collectWarning.Length = 0 with + | true -> None + | false -> + let warns = collectWarning + collectWarning <- List.empty + Some(warns) + + let private writeLintWarning (warn : LintWarning.Warning) = + let warnMsg = warn.Info + Environment.NewLine + LintWarning.getWarningWithLocation warn.Range warn.Input + collectWarning <- ((if collectWarning.Length > 0 then Environment.NewLine + warnMsg + else warnMsg) + :: collectWarning) + warnMsg |> writeWarningLine + String.replicate 80 "*" |> writeInfoLine + + let private handleError (str : string) = writeErrorLine str + + let private handleLintResult = + function + | LintResult.Failure(failure) -> handleError failure.Description + | _ -> () + + let private parseInfo (webFile : bool) = + let config = + if webFile then + Some { Configuration.formatting = None + Configuration.conventions = + Some { recursiveAsyncFunction = None + redundantNewKeyword = None + nestedStatements = None + reimplementsFunction = None + canBeReplacedWithComposition = None + raiseWithTooManyArgs = None + sourceLength = None + naming = + Some { interfaceNames = + Some { RuleConfig.enabled = false + config = None } + exceptionNames = None + typeNames = None + recordFieldNames = None + enumCasesNames = None + unionCasesNames = None + moduleNames = None + literalNames = None + namespaceNames = None + memberNames = + Some { RuleConfig.enabled = false + config = None } + parameterNames = None + measureTypeNames = None + activePatternNames = None + publicValuesNames = None + nonPublicValuesNames = None } + numberOfItems = None + binding = None } + Configuration.typography = None + ignoreFiles = None + hints = None } + else None + + { CancellationToken = None + ReceivedWarning = Some writeLintWarning + Configuration = config + ReportLinterProgress = Some parserProgress } + + let lintFiles (fileList : (bool * string list) list) = + let lintFile (webFile : bool) (file : string) = + let sw = Diagnostics.Stopwatch.StartNew() + try + Lint.lintFile (parseInfo webFile) file |> handleLintResult + sw.Stop() + with e -> + sw.Stop() + let error = + "Lint failed while analysing " + file + "." + Environment.NewLine + "Failed with: " + e.Message + + Environment.NewLine + "Stack trace:" + e.StackTrace + error |> handleError + fileList + |> List.iter (fun (webFile, fList) -> fList |> List.iter (lintFile webFile)) diff --git a/tools/paket.references b/tools/paket.references new file mode 100644 index 0000000..cff35a0 --- /dev/null +++ b/tools/paket.references @@ -0,0 +1,6 @@ +group Tooling + Fake.IO.FileSystem + FSharp.Core + FSharpLint.Core + dotnet-fable + dotnet-fake diff --git a/tools/tools.fsproj b/tools/tools.fsproj new file mode 100644 index 0000000..c698448 --- /dev/null +++ b/tools/tools.fsproj @@ -0,0 +1,11 @@ + + + + netcoreapp3.0 + + + + + + + \ No newline at end of file